从零开始配置服务器用于ss+站点
1. SS
首先安装pyenv,安装pyenv之前先安装必要环境,具体命令行请见:
https://github.com/pyenv/pyenv/wiki/Common-build-problems
安装pyenv之后安装自己需要的py版本,再通过pip安装ss,完成SS安装。
2. 网站
偷懒,使用lnmp一键安装包:
如果服务器内存 <= 1G 会提示内存不足无法安装数据库,可跳过数据库的安装,稍后自行手动安装:
手动安装数据库:https://downloads.mariadb.org/
安装完lnmp后,找到nginx.conf,里面的配置应该比较成熟,不用进行太多修改,但是请把nginx log 那一行最后的 crit(意为仅记录严重错误?) 去掉,不然error log记录不全。
可按需修改 nginx.conf 的document root。
安装完数据库后,如遇使用 'localhost' 无法访问数据库而 127.0.0.1 可以的情况,参阅
http://www.jb51.net/article/54025.htm
附录: open_basedir
1. open_basedir
不想过多解释,先把这一个安全措施禁用掉比较方便,不然可能出现有些 PHP 框架如 Laravel 无法使用的问题。
找到与nginx.conf 在统一目录下的 fastcgi.conf,注释掉最后一行的 xxxx PHP_ADMIN_VALUE xxxxx
2. 创建新用户 + bash profile
注意创建后给用户分配bash而不要用默认的sh,可通过usermod进行这项修改: usermod /bin/bash/ [username]
如要自定义bash profile,请注意
用户在登录时会首先载入全局的 /etc/profile, 其次载入用户各自的 ~/.bash_profile (这个名字可以替换成其他两个意思差不多的文件名,具体忘了),但是似乎不会载入~/.bashrc,因此可以手动在 .bash_profile 加入载入 .bashrc 的代码:
# include .bashrc if it exists if [ -f "$HOME/.bashrc" ]; then . "$HOME/.bashrc" fi
3. 切换用户且保持profile最新
切换用户的时候使用 `su -` 而不是 `su`,前面那个命令会重新载入用户的profile,相当于exit再登录。
比如 su - jeff | su - root
奇怪,我记得明明遇到了比这里多得多的乱七八糟问题,结果写下来就剩这么点了?