在Nginx中配置多个站点可以在一个服务器上运行多个网站,但是又不想直接修改nginx.conf文件,就在文件夹下新建一个文件夹vhost,以后只要在这里面添加站点就行。

修改/etc/nginx/nginx.conf文件。

http {

    include vhost/*.conf;
}

在vhost文件夹中新增站点test.conf

server { # simple load balancing
    listen          80;
    server_name     www.example.com;
    #access_log      /data/www/www.access.log main;

    listen          443;
    ssl             on;
    ssl_certificate           /etc/ssl/www.crt;
    ssl_certificate_key       /etc/ssl/www.private.pem;

    location / {
        #try_files $uri $uri/ /index.php?uri=$uri&$args;
        root /data/www/;
        index index.html index.htm index.php;
    }

    error_page 404 /404.php;

    location ~ ^.+\.php {
        root /data/home/www/wwwroot;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

要特别注意include fastcgi_params;,这个,我很多次因为缺少这一行,导致我的php程序就是无法运行。我看了php-fpm、nginx的log,都没有看出来。最后还是对比了其他可以运行的php网站配置,才发现一行少了,切忌切忌。