嘟嘟社区

python3搭建http服务器拿来当图床


python3搭建http服务器拿来当图床

本文基于debian

1 安装python3和python3-pip
[pre]

  1. sudo apt update
  2. sudo apt install python3
  3. sudo apt install python3-pip

复制代码

[/pre]

检查下是否安装成功
[pre]

  1. python3 –version
  2. pip3 –version

复制代码

[/pre]

2
[pre]

  1. python3 -m http.server 8090

复制代码

[/pre]

这样子 ip:8090就可以访问了,8090可以换成任意端口

不过这样子的话无法长期使用,所以创建个Systemd ,同时搞个文件夹专门放图片

先创建文件夹 我是直接在root下创建的,记得文件夹下面随便放个文件任意,不然会遇到无法访问情况
[pre]

  1. sudo mkdir -p /root/pic

复制代码

[/pre]

在 /etc/systemd/system 下创建一个叫python-http.service的文件

里面填写图下内容,我用chatgpt写的,文件的话我用winscp编辑上传的,你用nano也行,保存退出
[pre]

  1. [Unit]
  2. Description=Python HTTP Server
  3. After=network.target
  4. [Service]
  5. ExecStart=/usr/bin/python3 -m http.server 8090
  6. WorkingDirectory=/root/pic
  7. User=root
  8. Restart=always
  9. [Install]
  10. WantedBy=multi-user.target

复制代码

[/pre]

systemd就下面那么玩呗,分别是 重新加载,启动服务,开机自启
[pre]

  1. sudo systemctl daemon-reload
  2. sudo systemctl start python-http
  3. sudo systemctl enable python-http

复制代码

[/pre]

检查下状态
[pre]

  1. sudo systemctl status python-http

复制代码

[/pre]

搞完么,拿nginx,caddy或者cloudflare tunnel什么的反代下,就完事了
文件直接用winscp传上去,地址的话就是  反代域名/文件名字

签名博客的图床就是用这个搭建的
mjj来试下速度
别刷我小鸡流量,mjj手下留情
python simple http server 的性能很烂,没做 sendfile 不如 ngx 一根
这也叫图床… 直接nginx就完了

iks 发表于 2024-10-1 02:18
python simple http server 的性能很烂,没做 sendfile 不如 ngx 一根

试了下确实速度很垃圾
不如一以前用caddyfile

拿nginx,caddy或者cloudflare tunnel什么的反代下

???那我为什么不直接用nginx,caddy

IlI 发表于 2024-10-1 03:55
???那我为什么不直接用nginx,caddy

买椟还珠
舍近求远
哈哈

楼主这是反代习惯了。什么都反代。。
caddy和NGINX本身能做文件服务器的。。
还不如直接s3 了
dufs做静态文件也很好用