如何开始通过不同的端口的nginx(80以外)如何开始通过不同的端口的nginx(80以外)(How

2019-05-16 19:01发布

你好我是nginx的一个新手,我试着将它设置在我的服务器(运行Ubuntu 4),它已经运行Apache。

所以,在我apt-get install它,我试图启动nginx的。 然后,我得到这样的消息:

Starting nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
configuration file /etc/nginx/nginx.conf test is successful
[emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
[emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
[emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
[emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
[emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)

作为Apache是​​使用80端口是有道理的。

然后我试图修改nginx.conf中,我引用一些文章,所以我改变了它,像这样:

   server {

        listen       8080;

        location / {
         proxy_pass  http://xx.xx.xx.xx:9500;
         proxy_set_header   Host             $host:8080;
         proxy_set_header   X-Real-IP        $remote_addr;
         proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
         proxy_set_header Via    "nginx";
        }

保存此并尝试nginx的重新开始后,我仍然得到同样的错误之前。 我真的不能找到有关这个相关的帖子,可以哪位好心人切丝一些轻?

提前致谢 :)

================================================== =======================

我应该张贴在这里的conf的所有内容:

user www-data;
worker_processes  1;

error_log  /var/log/nginx/error.log;
pid        /var/run/nginx.pid;

events {
    worker_connections  1024;
    # multi_accept on;
}

http {
    include       /etc/nginx/mime.types;

    access_log  /var/log/nginx/access.log;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;
    tcp_nodelay        on;

    gzip  on;
    gzip_disable "MSIE [1-6]\.(?!.*SV1)";

    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;

   server {

        listen       81;

        location / {
         proxy_pass  http://94.143.9.34:9500;
         proxy_set_header   Host             $host:81;
         proxy_set_header   X-Real-IP        $remote_addr;
         proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
         proxy_set_header Via    "nginx";
        }


    }
}

 mail {
      See sample authentication script at:
      http://wiki.nginx.org/NginxImapAuthenticateWithApachePhpScript

      auth_http localhost/auth.php;
      pop3_capabilities "TOP" "USER";
      imap_capabilities "IMAP4rev1" "UIDPLUS";

     server {
         listen     localhost:110;
         protocol   pop3;
         proxy      on;
     }

     server {
         listen     localhost:143;
         protocol   imap;
         proxy      on;
     }
 }

基本上,我什么都没有改变,只是加入的服务器部分。

Answer 1:

你必须去/etc/nginx/sites-enabled/如果这是默认的配置,那么就应该是名称的文件: default

编辑通过定义所需的端口文件; 在下面的片段中,我们是在81端口服务Nginx的实例。

server {
    listen 81;
}

要启动服务器,运行下面的命令行;

sudo service nginx start

您现在可以访问你的应用程序上的端口81(用于本地主机, HTTP://本地主机:81 )。



Answer 2:

您将需要更改Apache或Nginx的配置端口。 完成这一步之后,您将需要重新启动服务器重新配置,使用你所使用的“服务”命令。


阿帕奇

编辑

sudo subl /etc/apache2/ports.conf 

并在下一行改变80到不同的东西:

Listen 80

如果你只是更改端口或在此添加更多的端口,你可能也不得不改变虚拟主机声明

sudo subl /etc/apache2/sites-enabled/000-default.conf

并在下一行改变80到不同的东西:

<VirtualHost *:80>

然后重新启动方式:

sudo service apache2 restart

Nginx的

编辑

/etc/nginx/sites-enabled/default

并更改以下行80:

listen 80;

然后重新启动方式:

sudo service nginx restart


Answer 3:

按照这样的:打开你的配置文件

vi /etc/nginx/conf.d/default.conf

改变你所监听的端口号;

listen       81;
server_name  localhost;

增加一条规则,iptables的

 vi /etc/sysconfig/iptables 
-A INPUT -m state --state NEW -m tcp -p tcp --dport 81 -j ACCEPT

重新启动的IPtables

 service iptables restart;

重启nginx的服务器

service nginx restart

在端口81访问年的nginx服务器上的文件



Answer 4:

如果你是那么以下端口与服务器设置窗口是在<nginx的安装路径> / conf文件夹出现在文件nginx.conf。

server {
    listen       80;
    server_name  localhost;
....

更改端口号并重新启动实例。



文章来源: How to start nginx via different port(other than 80)
标签: ubuntu nginx