使用nginx和Namecheap设置子域名

问题描述:

似乎有很多不同的冲突方式做事情,所以我有点困惑,需要一些帮助。 我有几个网站在不同的端口上运行在我的服务器上。 我在8085端口上有一个项目管理站点,在3000上有一个仪表板,等等。 我想为每个端口创建子域,我希望能够使用nginx而不是屏蔽来实现。使用nginx和Namecheap设置子域名

现在我有一个DNS A记录指向我的IP地址,并且它成功显示“Welcome to nginx!”页。 我该如何做到这一点,如果我访问这个页面,比如说projects.url.com,nginx会将代理传递给http://localhost:8085,并且正确的url会继续显示在浏览器中?

感谢您的帮助!

这是我目前的网站文件片段,它似乎并没有这样的伎俩:

server { 
listen 80; 
server_name projects.calben.xyz www.projects.calben.xyz; 
location/{ 
    proxy_pass http://localhost:8085/; 
} 
} 

server { 
    listen 80 default_server; 
    listen [::]:80 default_server; 

    root /var/www/html; 

    index index.html index.htm index.nginx-debian.html; 

    server_name _; 

    location/{ 
     try_files $uri $uri/ =404; 
    } 
} 

首先建立一个通配符子域名指向你的服务器IP。或者,如果你想要,你可以设置你想要的特定子域名。

https://www.namecheap.com/support/knowledgebase/article.aspx/597/2237/how-can-i-set-up-a-catchall-wildcard-subdomain

假设你已经有一个CONFIGS nginx的保持在/etc/nginx/sites-available

您将备份并删除/etc/nginx/sites-available/default.conf。然后,您将添加文件,您的子域名

sub.example.com.conf

server { 
    listen 80; 
    server_name sub.example.com; 

    location/{ 
     proxy_pass http://127.0.0.1:8085; 
    } 
} 

然后符号链接/etc/nginx/sites-enabled/sub.example.com.conf这个文件并重新启动nginx的。现在你的网站应该可以在http://sub.example.com

+0

我添加了我当前的nginx设置。你可以看看它,看看它有什么问题吗?谢谢! – calben

+0

你正在得到什么错误? –

+0

没有错误,但是当我试图访问projects.calben.xyz时,我被提供了默认的nginx页面。 – calben