一个懒散的博客

一个基于新浪的图床:Atc图床程序,支持QQ截图后直接粘贴上传

说明:目前博主发的图床程序挺多的,基于新浪的大概有:Fantasy-fieldAUXPI,这里就再分享个由PyOne作者使用WebUploader写的一个基于新浪的Atc图床程序,上传图片后直接放进新浪图床,不占用服务器空间,且支持QQ截图后,使用Ctrl+V键导入上传,安装挺简单的,这里发下。

截图

请输入图片描述
请输入图片描述

特性

  • 上传模式,支持拖拽文件、点击上传、复制粘贴(截图之后粘贴板有图片信息)
  • 支持批量上传
  • 支持选择图片大小

环境

  • 兼容Python2.7及以上版本
  • 兼容windowslinux

使用

Github地址:https://github.com/abbeyokgo/Atc

这里依然只说Linux系统使用方法。

1、安装pip

#CentOS 6.x 32位
rpm -ivh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
yum install -y python-pip

#CentOS 6.x 64位
rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum install -y python-pip

#CentOS 7.x
yum install -y epel-release
yum install -y python-pip
#如果CentOS 7安装出现No package python-pip available,可以用以下命令进行安装
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py

#Debian/Ubuntu系统
apt-get -y update
apt-get -y install python-pip

2、下载源码

#进入/home文件夹下载源码
cd /home
git clone https://github.com/abbeyokgo/Atc.git
cd Atc
#配置账号信息
nano config.py

填入以下信息:

WEIBO_USERNAME : 微博账号
WEIBO_PASSWORD : 微博密码
YUNDAMA_USERNAME : 云打码账号
YUNDAMA_PASSWORD : 云打码密码

这里为了可以正常登陆微博,使用云打码通过验证码验证。请提前注册云打码(注册地址),并充值1元才能使用!

3、安装依赖并运行

#安装依赖
pip install -r requirements.txt
#使用35000端口运行,端口可自行修改为其它端口,后面的就自行修改
gunicorn -keventlet -b 0:35000 run:app

接下来访问:http://ip:35000即可。

如果Web界面打不开,可能还需要打开防火墙端口,使用命令:

#CentOS 6
iptables -I INPUT -p tcp --dport 35000 -j ACCEPT
service iptables save
service iptables restart

#CentOS 7
firewall-cmd --zone=public --add-port=35000/tcp --permanent
firewall-cmd --reload

域名反代

如果你使用域名的话,还需要反代下端口,反代可以用NginxCaddy。如果你网站有宝塔,就可以使用宝塔进行反代,如果没有,建议使用第2种的Caddy反代,配置很快。

1、宝塔反代
先进入宝塔面板,然后点击左侧网站,添加站点,然后再点击添加好了的域名名称,这时候就进入了站点配置,点击反向代理,目标URL填入http://127.0.0.1:35000,再启用反向代理即可。至于启用SSL就不说了,直接在站点配置就可以启用。

2、Caddy反代
安装Caddy

wget -N --no-check-certificate https://raw.githubusercontent.com/iiiiiii1/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh
#备用地址
wget -N --no-check-certificate https://toot.su/usr/shell/Caddy/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh

配置Caddy

#修改你的域名,再将下面整体一起复制到SSH运行!
echo "xx.com {
 gzip
 tls admin@moerats.com
 proxy / 127.0.0.1:35000
}" > /usr/local/caddy/Caddyfile

启动Caddy

/etc/init.d/caddy start

然后就可以使用域名访问了。

3、Nginx配置
如果你使用其它的,这里就大概发个Nginx反代配置,直接添加到配置文件即可。

#在配置文件里添加
location / {
     proxy_pass http://127.0.0.1:35000;
     proxy_redirect off;
     proxy_set_header X-Real-IP $remote_addr;
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }

开机自启

这里就使用最简单的rc.local自启,不过Debian 9Ubuntu 17+是没有rc.local文件的,所以使用该系统的需要先配置一下。

1、添加rc-local.service,以下为一整条命令,一起复制运行
cat > /etc/systemd/system/rc-local.service <<EOF
[Unit]
Description=/etc/rc.local
ConditionPathExists=/etc/rc.local
 
[Service]
Type=forking
ExecStart=/etc/rc.local start
TimeoutSec=0
StandardOutput=tty
RemainAfterExit=yes
SysVStartPriority=99
 
[Install]
WantedBy=multi-user.target
EOF

2、新建rc-local文件,以下为一整条命令,一起复制运行
cat > /etc/rc.local <<EOF
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.    
EOF

3、添加权限并设置开机自启
chmod +x /etc/rc.local
systemctl start rc-local
systemctl enable rc-local

先复制supervisord.conf

cp supervisord.conf.sample supervisord.conf

该配置文件指定的运行目录为/home/Atc,默认运行端口为35000,如果源码不是在/home文件夹的或者端口修改过,请自行修改该配置文件。

最后将启动命令加入rc.local文件,使用命令:

#CentOS 7系统
echo "supervisord -c /home/Atc/supervisord.conf" >> /etc/rc.d/rc.local
chmod +x /etc/rc.d/rc.local

#CentOS 6、Debian、Ubuntu系统
echo "supervisord -c /home/Atc/supervisord.conf" >> /etc/rc.local
chmod +x /etc/rc.local

请注意下supervisord.conf文件所在目录是否和上面命令一致。

总结

该图床看起来还是不错的,如果你追求美观的话,建议使用Fantasy-field图床,搭建教程→传送门。如果你不想花1块钱,同样想搭建过程简单的,可以使用AUXPI,搭建教程→传送门

赞(0)