Ubuntu安装nginx反向代理服务器–kalrry
- 前言
- 一、购买服务器并安装ubuntu系统
-
- 1. 购买云主机
- 2. 安装ubuntu操作系统
- 二、开放Linux的ssh访问权限,用于远程连接
-
- 1. 开放Linux的ssh访问权限
- 2. 操作示例:
- 3. mac系统ssh远程连接
- 三、nginx配置多站点
-
- 1. 安装 Nginx
- 2. 创建新的文件路径
- 3. 创建不同的入口文件
- 4. 创建不同的配置文件
- 5. 建立软链接
- 四、上传网站
-
- 1. 新建Sftp连接,使用Mac的sftp远程上传网站文件
- 2. 示例代码:
- 3. 解决文件解压问题
- 五、Linux服务器的启动、停止和重启命令
-
- 1. 查看Nginx服务器状态:
- 2. 停止nginx服务器:
- 3. 启动nginx服务器:
- 4. 重启nginx服务器:
- 5. 强制重启nginx服务器
- 6. 强制关闭Nginx服务,非必要不要用
- 六、注意事项
- 七、参考
前言
Win配置记录
Mac配置记录
一、购买服务器并安装ubuntu系统
1. 购买云主机
阿里云、腾讯云、华为云、其他…、买腾讯云的香港主机可以不用备案
2. 安装ubuntu操作系统
CentOS也可以,未知坑需要自己解决
二、开放Linux的ssh访问权限,用于远程连接
1. 开放Linux的ssh访问权限
服务器默认是不允许远程访问的,需要进入 sshd_config 修改配置文件,用 vim 编辑器打开 sshd_config 配置文件,命令如下:
vim教程
sudo vim /etc/ssh/sshd_config
//找到对应配置并修改;vim编辑器中字幕 [i] 代表编辑,退出编辑按 [ESC] 保存按 [:wq],是的,你没看错,就是 [:]、[w]、[q]三个按键组合,[w]保存,[q]退出,---记住:一定要在英文输入法下
//#permitrootlogin yes
//#passwordauthentication yes
//如果有#号注释,请去掉#号,如下:
// permitrootlogin yes
// passwordauthentication yes
2. 操作示例:
3. mac系统ssh远程连接
完成上述ssh配置以后,就可以建立远程连接,下面我们用mac系统自带远程工具连接,(win用户可以用 Xftp 和 Xshell 软件建立可视化连接,请自行百度)
三、nginx配置多站点
1. 安装 Nginx
远程给Ubuntu服务器安装Nginx,这里通过 apt-get 命令来安装 Nginx:
sudo apt-get install nginx
2. 创建新的文件路径
安装完 Nginx 之后,开始配置多站点,就是通过设置不同的 root 根目录来返回不同的内容
sudo mkdir -p /var/www/kalrry.com/index.html
sudo mkdir -p /var/www/unakey.com/index.html
上面命令会创建两个存放网站的目录;只要将 kalrry.com 和 unakey.com 换成你自己的域名,再给这两个文件夹相应的权限
sudo chown -R www-data:www-data /var/www/kalrry.com/index.html
sudo chown -R www-data:www-data /var/www/unakey.com/index.html
//上面的 www-data:www-data 就是 Nginx 默认的用户组合用户名,若很迷茫可以进入nginx.conf配置文件查看,先看下一步
3. 创建不同的入口文件
为了演示,先进入上面创建的 index.html demo文件用于测试用,分别进入 kalrry.com 和 unakey.com 目录编辑 index.html 入口文件
sudo vim /var/www/kalrry.com/index.html
sudo vim /var/www/unakey.com/index.html
添加如下内容
<html><head><title>kalrry.com创建成功 或者 unakey.com创建成功(根据你的命名自定义,这里只是便于区分)</title></head><body><h1>Success! kalrry.com创建成功 或者 unakey.com创建成功(根据你的命名自定义,这里只是便于区分)</h1></body>
</html>
主要上面的内容是用 kalrry.com 和 unakey.com 来区分,记得替换成你自己的域名或者自定义名
4. 创建不同的配置文件
在安装完 Nginx 之后,默认 Nginx 配置文件在 /etc/nginx/sites-available/default ,若要配置多站点,可如下操作:
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/kalrry.com
// cp是复制命令
然后编辑 /etc/nginx/sites-available/kalrry.com 配置文件:
sudo vim /etc/nginx/sites-available/kalrry.com
删除原来的配置内容,添加下面的配置内容:
server {listen 80;listen [::]:80;root /var/www/kalrry.com/;index index.html index.htm index.nginx-debian.html;server_name kalrry.com www.kalrry.com;location / {try_files $uri $uri/ =404;}
}
这样就配置完 kalrry.com 站点,如果你需要配置 SSL 的话,一样是在 /etc/nginx/sites-available/kalrry.com 这个文件配置就好。接下来就照葫芦画瓢,配置unakey.com文件,重复上面操作;我们将两个域名配置文件就设置好后,需要将原来 Nginx 的 default 配置文件删除:
sudo rm etc/nginx/sites-available/default
5. 建立软链接
有了 kalrry.com 和 unakey.com 的配置之后,我们需要把这两个配置告知 Nginx
sudo ln -s /etc/nginx/sites-available/domain-one.com /etc/nginx/sites-enabled/
sudo ln -s /etc/nginx/sites-available/domain-two.com /etc/nginx/sites-enabled/
执行上面的命令之后,我们再使用 nginx -t 检测 Nginx 的配置文件是否有错
sudo nginx -t
如果你没有看到报错,就可以直接重启 Nginx 服务了
sudo service nginx restart
备忘地址
四、上传网站
1. 新建Sftp连接,使用Mac的sftp远程上传网站文件
2. 示例代码:
put 本地文件地址 服务器文件地址
例如: put /Desktop/Study/youku/kalrry.zip /var/www/kalrry.com/
// 提示Permission denied是权限不够 给服务器目标文件夹执行如下命令
sudo chmod -R 777 /var/www
//示例如下
3. 解决文件解压问题
- 如果上传到Linux站点目录下的站点文件是压缩包,就看这篇
- 上传zip压缩文件到www目录后,在www目录用unzip解压,www目录一般在var/www/路径下
- unzip压缩解压软件安装:
sudo apt-get install unzip
解压方式:unzip kalrry.zip
unzip详细使用教程
- 常用压缩文件格式及解压工具
tar 用 tar 工具
gz 用 gzip 或者 gunzip 工具
tar.Z,*.tar.bz2,*.tar.gz 和 *.tgz 用 tar 工具
bz2 用 bzip2 或者用 bunzip2 工具
Z 用 uncompress 工具
rar 用 unrar 工具
zip 用 unzip 工具
五、Linux服务器的启动、停止和重启命令
1. 查看Nginx服务器状态:
命令如下:
sudo systemctl status nginx
//绿色代表服务正在运行
//白色代表服务器已停止
//红色代表服务器故障
//退出状态显示进入命令行:按Q键
2. 停止nginx服务器:
sudo systemctl stop nginx
// 使用Nginx命令停止Nginx
// sudo nginx -s stop
// 此时可以查看服务器状态,显示为白色,sudo systemctl status nginx
3. 启动nginx服务器:
sudo systemctl start nginx
// 使用Nginx命令启动Nginx
// sudo nginx -s restart
// 此时可以查看服务器状态,显示为绿色,sudo systemctl status nginx
4. 重启nginx服务器:
sudo systemctl reload nginx
// 使用Nginx命令重启Nginx
// sudo nginx -s reload
// 此时可以查看服务器状态,显示为绿色,sudo systemctl status nginx
5. 强制重启nginx服务器
sudo systemctl restart nginx
// 对于主要配置更改,您可以强制完全重启Nginx。这将强制关闭整个服务和子流程,然后重新启动整个程序包
// reload重启比restart启动安全,非重大更新,请使用reload
6. 强制关闭Nginx服务,非必要不要用
sudo nginx -s quit
六、注意事项
遇到这些问题,可以尝试买点彩票,或者让自己以后小心点
- Nginx一个端口代理多个server的注意事项
- nginx无法启动的问题
七、参考
https://blog.csdn.net/qq_36871369/article/details/120542956
https://blog.csdn.net/cukw6666/article/details/107983709
https://www.cnblogs.com/wpcnblog/p/9969677.html