做网站线稿软件有哪些网站建设文献综述范文
做网站线稿软件有哪些,网站建设文献综述范文,修改散文网站,宁波网站推广优化外包要为自己的网站、博客或 App 添加一个“每日一图”或“随机背景”功能吗#xff1f;本文将通过两种主流方式#xff0c;从零搭建一个高性能#xff0c;支持跨域的随机图片 API。
方案一#xff1a;宝塔面板 PHP站点。
方案二#xff1a;Python Flask运行web服务。
一、…要为自己的网站、博客或 App 添加一个“每日一图”或“随机背景”功能吗本文将通过两种主流方式从零搭建一个高性能支持跨域的随机图片 API。方案一宝塔面板 PHP站点。方案二Python Flask运行web服务。一、准备工作在开始之前请确保你拥有一台 Linux 服务器阿里云/腾讯云/华为云等或本地测试环境。一个域名可选用于绑定 API 地址。一组图片链接可以是本地路径也可以是图床的远程 URL或者一个存放图片的文件夹。准备一个img.txt文件每行存放一个图片链接例如https://picsum.photos/800/600?random1 https://picsum.photos/800/600?random2 https://picsum.photos/800/600?random3方案一宝塔面板 PHP站点1. 安装宝塔面板确保系统符合安装宝塔面板可前往官网了解并复制安装命令宝塔面板下载免费全能的服务器运维软件如果你还没有安装宝塔请登录服务器执行以下命令以 Ubuntu 为例wget-Oinstall_panel.sh https://download.bt.cn/install/install_panel.shsudobashinstall_panel.sh安装完成后登录面板通常是http://你的IP:8888按提示设置用户名和密码。2.安装PHP8.4版本安装宝塔面板后就可以在面板内安装PHP一键化安装非常方便。3. 创建 PHP 站点登录宝塔面板点击左侧“网站”-“添加站点”。填写域名如random.aevi.top若无域名可填服务器 IP然后选择刚刚安装的PHP8.4版本。点击“确定”站点创建成功。4. 上传代码与图片列表点击刚创建站点的“根目录”进入文件管理。新建一个文本文件img.txt将你的图片链接逐行粘贴进去保存。新建一个 PHP 文件index.php粘贴以下代码?php// 随机图片 API - PHP 版header(Access-Control-Allow-Origin: *);// 允许跨域header(Access-Control-Allow-Methods: GET);$filenameimg.txt;if(!file_exists($filename)){http_response_code(404);die(文件不存在);}// 读取非空行$picsarray_filter(file($filename),function($line){returntrim($line)!;});if(empty($pics)){http_response_code(404);die(图片列表为空);}// 随机选择$pictrim($pics[array_rand($pics)]);$typeisset($_GET[type])?strtolower($_GET[type]):;if($typejson){header(Content-Type: application/json);echojson_encode([pic$pic]);}else{// 302 重定向header(Location:$pic);exit;}?5.测试接口直接访问http://你的域名/→ 会自动跳转到随机图片。JSON 模式http://你的域名/?typejson→ 返回{pic: ...}。我的APIhttps://random.aevi.top/方案二Python Flask运行web服务1.安装 python 环境与 Flask这里我选择安装 conda包管理工具conda自带 python管理虚拟环境及依赖包非常方便。安装方法参考博文Python工具Conda 包管理器 | Guhe Blog登录服务器终端执行# conda新建一个虚拟环境conda create--namerandompython3.13# 激活虚拟环境conda activate random# 安装包pipinstallflask flask-cors2.编写 Flask 应用在项目目录下创建 api.pyfromflaskimportFlask,request,jsonify,redirectfromflask_corsimportCORSimportosimportrandom appFlask(__name__)# 启用 CORS允许所有来源跨域访问生产环境可限制 originCORS(app,resources{r/*:{origins:*}})# 获取当前脚本所在目录BASE_DIRos.path.dirname(os.path.abspath(__file__))IMG_FILEos.path.join(BASE_DIR,img.txt)app.route(/)defrandom_image():ifnotos.path.exists(IMG_FILE):return文件不存在,404try:withopen(IMG_FILE,r,encodingutf-8)asf:lines[line.strip()forlineinfifline.strip()]exceptUnicodeDecodeError:# 如果 UTF-8 解码失败尝试 GBK兼容 Windows 系统保存的文件withopen(IMG_FILE,r,encodinggbk)asf:lines[line.strip()forlineinfifline.strip()]ifnotlines:return图片列表为空,404pic_urlrandom.choice(lines)type_paramrequest.args.get(type,).lower()iftype_paramjson:# CORS 已由 flask-cors 自动处理无需手动加头returnjsonify({pic:pic_url})else:returnredirect(pic_url)if__name____main__:app.run(host0.0.0.0,port5000,debugTrue)同样在该目录下创建 img.txt 并填入图片链接。3.后台运行 Flask使用 nohup 或 screen 让程序在后台运行nohup python3 app.py output.log 21 此时访问http://服务器IP:5000即可看到效果。记得防火墙放行指定端口为安全性考虑可以做反向代理绑定域名进行访问调用API。希望这篇博客对你有帮助如果有其他问题欢迎随时提问