我正在尝试将 Nginx 实现为反向代理,以通过子域为不同的 Web 应用程序提供服务,但似乎找不到任何关于如何执行此操作的初学者友好指南。
示例:
这个想法是在我的路由器上打开端口 80 和 443,然后将所有流量转发到反向代理,然后反向代理与 LAN 上的相应服务器(通过子域配置指定)进行通信,并将请求传递回客户端。
到目前为止我尝试过的(尽管没有任何运气):
1) 编辑
default
中的 /etc/nginx/sites-available/
文件,使其看起来像这样:
server {
listen 80;
server_name cloud.mydomain.com;
location / {
proxy_pass http://localhost:5000/;
}
}
server {
listen 80;
server_name node2.mydomain.com;
location / {
proxy_pass http://localhost:5001/;
}
}
这将导致任何子域指向我在第一个块中指定的任何内容:(
2)取消链接默认文件,在
test.conf
下创建一个新的/etc/nginx/sites-available/
文件并将其链接到/etc/nginx/sites-enabled/
(nginx -t
没有报告任何错误)。配置与上面相同。
设置:我正在运行 Ubuntu Server 19.10。我创建了一个域名,并且已经将子域设置为 CNAME 记录。
注意:我不想使用 Nginx 作为 Web 服务器。我正在尝试将它用于 Node.js Web 应用程序、数据库、我的 nextcloud 等。
注2:我现在只关心子域。是的,我需要添加 SSL 配置等,但是一旦我了解了如何进行正确的配置,我将能够使用文档解决所有问题(我希望?哈哈)。
您是否正在寻找有关如何使用 Nginx 作为 SSL 反向代理的简单教程?本指南将引导您完成这一过程! Nginx 是一个强大的工具。它允许您为多个应用程序、网站、负载平衡应用程序等提供服务。所有这些灵活性都是由相对简单的配置系统提供的,该系统使用几乎人类可读的配置文件。 SSD 节点 帮助您摆脱困境。
Nginx:https://www.ssdnodes.com/blog/how-to-use-nginx-as-a-reverse-proxy-with-ssl-tutorial/