前端
宝塔面板及LNMP环境
安装宝塔
运行以下命令
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install.sh && sh install.sh
过程中需要输入 y 之后全自动完成
下载程序
cd 网站根目录
git clone -b master https://github.com/NimaQu/ss-panel-v3-mod_Uim.git tmp && mv tmp/.git . && rm -rf tmp && git reset --hard
安装依赖
chown -R root:root *
chmod -R 755 *
chown -R www:www storage
php composer.phar install
配置文件
cp config/.config.php.example config/.config.php
修改配置文件(也可以在宝塔页面修改,后面章节有说明)
vi config/.config.php
伪静态设置
宝塔-网站-设置-伪静态,添加如下
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
网站目录设置
将运行目录改为/public
修改目录权限将 storage 目录权限改为 www 777
禁用函数
宝塔用户可能会在超过某一数量节点的时候出现 ~Undefined offset :0 in 你的网站路径
这个错误, 这个问题会导致后端无法进行连接,可以按照以下方法解决
宝塔-软件管理-php7.1设置
在禁用函数一栏找到 system
和 proc_open
去除它,(我多去除了两个,proc_get_status
和 popen
)
在性能调整中,把 PHP 运行模式设置为 静态
在配置文件中 按 Ctrl+F 搜索 display_errors = 改为 Off 后保存
导入数据库
Github项目主页下载,https://github.com/NimaQu/ss-panel-v3-mod_Uim
下载后解压,找到数据库文件 sql/glzjin_all.sql
宝塔-数据库-导入
添加计划任务
执行 crontab -e 命令, 添加以下四条
30 22 * * * php /网站目录/xcat sendDiaryMail
0 0 * * * php -n /网站目录/xcat dailyjob
*/1 * * * * php /网站目录/xcat checkjob
*/1 * * * * php /网站目录/xcat syncnode
创建管理员并同步用户
php xcat createAdmin //创建管理员
php xcat syncusers //同步用户
php xcat initQQWry //下载IP解析库
php xcat resetTraffic //重置流量
php xcat initdownload //下载ssr程式
其他计划任务可选
如果需要自动备份,可添加以下一条 (此例为每20分钟备份1次)
*/20 * * * * php -n /网站目录/xcat backup
如果需要财务报表,可选添加以下三条
5 0 * * * php /网站目录/xcat sendFinanceMail_day
6 0 * * 0 php /网站目录/xcat sendFinanceMail_week
7 0 1 * * php /网站目录/xcat sendFinanceMail_month
如果需要检测被墙,添加以下一条
*/1 * * * * php /网站目录/xcat detectGFW
如果要用到radius,需要添加下面这三条
*/1 * * * * php /网站目录/xcat synclogin
*/1 * * * * php /网站目录/xcat syncvpn
*/1 * * * * php -n /网站目录/xcat syncnas
其他可添加命令
参考 /www/wwwroot/ss.augustdoit.bid/app/Command 下的php文件
前端更新
git stash
git pull
php xcat update
后端手动(debian)
1、依赖安装
apt-get update
apt-get install git wget python-setuptools -y
apt-get install python-pip
pip install cymysql
2、libsodium 安装
apt-get install build-essential -y
wget https://github.com/jedisct1/libsodium/releases/download/1.0.16/libsodium-1.0.16.tar.gz
tar xf libsodium-1.0.16.tar.gz && cd libsodium-1.0.16
./configure && make -j2 && make install
echo /usr/local/lib > /etc/ld.so.conf.d/usr_local_lib.conf
ldconfig
cd ../ && rm -rf libsodium*
3、下载源代码并安装依赖
git clone -b manyuser https://github.com/Anankke/shadowsocks.git
cd shadowsocks
pip install -r requirements.txt
4、配置文件
cp apiconfig.py userapiconfig.py
cp config.json user-config.json
配合前端填写userapiconfig.py:
vi userapiconfig.py
数据库对接:
NODE_ID = %//替换为前端对应的nodeid
API_INTERFACE = 'glzjinmod'
MysqlMYSQL_HOST = '%'//替换为前端对应的数据库地址
MYSQL_PORT = 3306
MYSQL_USER = '%'
MYSQL_PASS = '%'
MYSQL_DB = '%'
MANAGE_BIND_IP = '%'//替换为前端管理地址
WEBAPI对接:
NODE_ID = %//替换为前端对应的nodeid
WEBAPI_URL = '%' //替换为你的网站非CDN地址
WEBAPI_TOKEN = '%'
可选项:
MANAGE_PASS = '%'//替换为一个复杂的密码
保存后启动后段测试是否可以运行:
python server.py
则有问题根据报错信息来找原因。
确定没问题后,结束,输入如下命令将程序放到后台运行:
./run.sh 无日志后台运行
./logrun.sh 有日志后台运行
开机启动脚本
1、nano /etc/systemd/system/rc-local.service
[Unit]
Description=/etc/rc.local Compatibility
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
2、nano
/etc/rc.local
#!/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.
sh /root/shadowsocks/run.sh
exit 0
注意上面的/root/shadowsocks/run.sh位置是否正确
3、make sure /etc/rc.local
is executable and add this code inside it:
chmod +x /etc/rc.local
systemctl enable rc-localln -s /lib/systemd/system/rc.local.service /etc/systemd/system/
4、Enable the service:
systemctl enable rc-local
5、Start service and check status:
systemctl start rc-local.service
systemctl status rc-local.service
优化设置
补充
dgchost 及 linode 小鸡安装出错解决办法
后端安装不了easy_install pip,用下面方法
yum -y install epel-release
yum install python-pip
如果pip install -r requirements.txt超时
pip install -r requirements.txt --default-timeout=100
或者
pip install -r requirements.txt --trusted-host pypi.python.org
暂无评论内容