将新站点添加到Ngnix

时间:2016-03-29 07:11:08

标签: nginx

我是Nginx的新手,我想在远程Nginx服务器上添加一个新网站。

我注意到/etc/nginx/conf.d/default.conf已被修改为:

server {

server_name api.example.com;

    root   /var/www/html/api/public;
    index  index.php index.html index.htm;

location / {
    try_files $uri $uri/ /index.php?$query_string;
}

location ~ \.php$ {
    fastcgi_pass    unix:/var/run/php-fpm/php-fpm.sock;
    fastcgi_index   index.php;
    fastcgi_param   SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    include         fastcgi_params;
}

}

我想将另一个网址:testapi.example.com添加到同一台服务器。所有tuturiols都指向/etc/nginx/sites-enabled/,但该文件夹为空。这是一台生产机器,所以我不想带来任何停机时间。

请帮忙。

1 个答案:

答案 0 :(得分:1)

您可以为/etc/nginx/conf.d/default.conf为您的第二个域添加另一个服务器块,或者更好的方法是在/etc/nginx/conf.d/中创建一个新的.conf文件(使用有意义的名称)并在该文件中为第二个域定义新的服务器块。

所以你要保留你的/etc/nginx/conf.d/default.conf

server {
    server_name api.example.com;

    root   /var/www/html/api/public;
    index  index.php index.html index.htm;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php$ {
        fastcgi_pass    unix:/var/run/php-fpm/php-fpm.sock;
        fastcgi_index   index.php;
        fastcgi_param   SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include         fastcgi_params;
    }
}

并添加/etc/nginx/conf.d/testapi.conf

server {
    server_name testapi.example.com;

    root   /var/www/html/testapi/root;
    index  index.php index.html index.htm;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    ... rest of config for second domain...
}