配置服务器 Ubuntu 记录+踩坑

从零开始配置服务器用于ss+站点

1. SS

首先安装pyenv,安装pyenv之前先安装必要环境,具体命令行请见:

https://github.com/pyenv/pyenv/wiki/Common-build-problems

安装pyenv之后安装自己需要的py版本,再通过pip安装ss,完成SS安装。

2. 网站

偷懒,使用lnmp一键安装包:

https://lnmp.org/

如果服务器内存 <= 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

奇怪,我记得明明遇到了比这里多得多的乱七八糟问题,结果写下来就剩这么点了?

原文地址:https://www.cnblogs.com/makejeffer/p/7301580.html