注:本教程在Vultr VPS上测试通过,如需部署请前往Vultr.com
先决条件
运行最新的Arch Linux的Vultr服务器(请参阅本文。)
须藤访问。
需要以root身份运行的命令带有前缀 #
。建议以root用户身份运行命令的方式是,以普通用户的身份为每个命令添加前缀 sudo
。
安装并熟悉文本编辑器,例如vi,vim,nano,emacs或其他类似的编辑器
安装Nginx 1.14 Web服务器
如果您使用的是防火墙,则需要启用到端口的传入TCP通信 80
。
安装Nginx。还有 nginx
包是稳定分支而不是主线,有点像长期支持分支。建议使用mainline分支,除非您需要使用的第三方模块与此不兼容:
# pacman -S nginx-mainline
启动Nginx,并使其在每次启动后启动:
# systemctl enable --now nginx
测试Nginx是否正在运行。访问 https://YOUR-SERVER-WEB-ADDRESS-OR-IP
,您将看到其欢迎页面。 (跑 ip addr
如果您需要知道查找IP地址。)
Nginx的配置文件在 /etc/nginx
,主要是 nginx.conf
。线 server.location.root /usr/share/nginx/html;
设置它将在何处查找网络文件。默认情况下,主Nginx进程以root身份运行,但其工作进程以user身份运行 http
。 Nginx将登录到 /var/log/nginx/access.log
。
虚拟主机
您可以在同一台Nginx服务器上托管多个域名,并为它们提供不同的内容。
创建一个文件夹来保存您的虚拟主机配置:
# mkdir /etc/nginx/sites-enabled
为每个虚拟主机创建一个配置文件;例如, /etc/nginx/sites-enabled/YOUR-DOMAIN-NAME.com
;并使用以下配置填充它:
server {
listen 80;
server_name YOUR-DOMAIN-NAME.com;
location / {
root /usr/share/nginx/YOUR-DOMAIN-NAME.com;
index index.html index.htm;
}
}
在http块的末尾 /etc/nginx/nginx.conf
,添加以下行:
include sites-enabled/*;
重新启动Nginx:
# systemctl restart nginx
请求Nginx接收到 YOUR-DOMAIN-NAME.com
将被送出 /usr/share/nginx/YOUR-DOMAIN-NAME.com
。注意对Nginx的请求与特定的不匹配 server_name
,(仅是IP地址或其他解析为您IP的域名)仍将在常规服务器模块之外提供 location.root
在 /etc/nginx/nginx.conf
,默认为 /usr/share/nginx/html/
。
注:本教程在Vultr VPS上测试通过,如需部署请前往Vultr.com