阿里云centOS7.4 nginx: [emerg] "server" directive is not allowed here in /etc/nginx/vhost/xxxxxx.conf:2


里云centOS7.4配置多个站点遇到的问题
nginx: [emerg] "server" directive is not allowed here in /etc/nginx/vhost/xxxxxx.conf:2
这个错误好尴尬,
费了几个小时去解决,小白呀没办法


先贴下/etc/nginx/nginx.conf的内容

worker_processes 1;
events {
    worker_connections 1024;
}

http {
    include mime.types; 
    default_type application/octet-stream;
    sendfile on;
    keepalive_timeout 65;

    include /etc/nginx/vhost/*.conf;

    server {
         listen 80;
         server_name _;
         root /usr/share/nginx/html;
         include /etc/nginx/vhost/*.conf;
    }
}

 

vhost/mayifa.conf内容

server
{
    listen 80;
    server_name localhost; 
    root /data/www/mayifanx;
    index index.php index.html index.htm;
    location ~ \.php$ {
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

  

就这个配置好好的,systemctl restart nginx ,依照命令使用systemctl status nginx.service
检测为什么为老是报错
nginx: [emerg] "server" directive is not allowed here in /etc/nginx/vhost/xxxxxx.conf:2

 

 

所以nginx.conf中server节点的 include /etc/nginx/vhost/*.conf; 应该被删掉

正确的/etc/nginx/nginx.conf配置如下

worker_processes 1;
events {
    worker_connections 1024;
}

http {
    include mime.types; 
    default_type application/octet-stream;
    sendfile on;
    keepalive_timeout 65;

    include /etc/nginx/vhost/*.conf;

    server {
         listen 80;
         server_name _;
         root /usr/share/nginx/html;
    }
}

 systemctl restart nginx 

终于正常了。

 

可以使用 nginx --/etc/nginx/nginx.conf  这个检测配置是否正常,今天才明白nginx.conf配置是把你指定include配置一起包含的,类似C++中的include

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM