我正在与Nginx
,我想知道如何将具有特定端口的所有请求redirect到子域?
这是我的default.conf
:
server{ listen 80 default_server; server_name localhost; location / { root /usr/share/nginx/html; } } server{ listen 80; server_name blog.mydomain.com; location / { proxy_pass http://my-ip:8080; } }
所以,我有默认的mydomain.com
服务的HTML文件夹,和一个子域blog.mydomain.com
服务的应用程序运行端口8080。
我的问题是,当我尝试直接访问my-ip:8080
,或mydomain.com:8080
或blog.mydomain.com:8080
服务器服务应用程序运行端口8080,我想redirect所有这些请求到blog.mydomain.com
没有:8080
blog.mydomain.com
。
我怎样才能做到这一点 ? 自动redirect到blog.mydomain.com
如果我指定:8080
的url?
我想你不太清楚它是如何工作的。
NGINX不是服务端口8080上的文件,而是在该端口上运行的应用程序。 如果要禁用端口8080服务文件,则应该将应用程序绑定到127.0.0.1:8080或使用防火墙来防止连接到它。
此外,由于你的configuration显示你的代理请求到你的IP(如果它已被编辑,我想它是你的公共地址),实现redirect到端口8080将导致redirect循环。