用nginx配置node的程序,已经改了conf的配置,用域名无法访问?

oovwall
  • 57

我用pm2运行了一个node的示例程序(express的示例程序),目前可以用http://127.0.0.1:3000 打开,现在我想用自己自定义的域名打开,但是我用nginx配置之后还是不能用自定义域名(http://mydomain.com)打开,用127.0.0.1或localhost是可以的,是不是还要在本机配置host呢?但是在网上找了一圈nginx配置经验或说明没有一个说还要改host,希望能有人解答。

附上nginx.conf的配置信息


#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    upstream nodejs {
        server 127.0.0.1:3000;
    }

    server {
        listen       80;
        server_name  www.mydomain.com mydomain.com;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header Host  $http_host;
            proxy_set_header X-Nginx-Proxy true;
            proxy_set_header Connection "";
            proxy_pass      http://nodejs;
            

            #root   html;
            #index  index.html index.htm;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

    }

    include servers/*;
}
回复
阅读 4.8k
5 个回答
✓ 已被采纳

我也用nginx代理,已经跑通,贴上代码

nginx配置

server {
    listen 80;
    server_name www.node.com;
    location / {
        proxy_pass http://127.0.0.1:3000;
    }
}

host配置

127.0.0.1        www.node.com

本地环境要配置host,自定义域名映射到127.0.0.1

打开配置文件,命令如下:

vi /etc/hosts

修改第一行

127.0.0.1       mydomain.com
255.255.255.255 broadcasthost
::1             localhost

修改完需要让配置立即生效,执行命令如下

source /etc/hosts

域名是给外网服务器用的,你本机搞域名访问什么鬼?

宣传栏