Nginx 是一个高性能的 HTTP 和反向代理服务器,也用作邮件代理服务器。它能够通过配置文件实现多个项目的部署,并通过不同的域名进行访问。
假设我们有两个项目:project1
和 project2
,分别通过 project1.example.com
和 project2.example.com
访问。
sudo apt update
sudo apt install nginx
编辑 Nginx 配置文件 /etc/nginx/sites-available/default
,添加以下内容:
server {
listen 80;
server_name project1.example.com;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
server {
listen 80;
server_name project2.example.com;
location / {
proxy_pass http://localhost:4000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
确保 project1
和 project2
分别在端口 3000
和 4000
上运行。
# 启动 project1
cd /path/to/project1
npm start
# 启动 project2
cd /path/to/project2
npm start
sudo systemctl restart nginx
问题:访问域名时提示 域名无法解析
。
原因:DNS 配置不正确或未生效。
解决方法:
问题:访问域名时提示 502 Bad Gateway
。
原因:Nginx 配置错误或后端服务未启动。
解决方法:
问题:需要使用 HTTPS 访问网站。
解决方法:
通过以上配置和解决方法,你可以成功部署多个项目并通过不同域名进行访问。
领取专属 10元无门槛券
手把手带您无忧上云