Nginx 设置已经解析的域名,在nginx中没有定义相应server时的默认访问

场景介绍:

因为业务需求,我们需要对域名进行解析,这里我对域名进行了如下解析


但是,因为业务需求,我可能在nginx中只定义了kuman.xiaobudiu.top 和 www.xiaobudiu.top 的相应server的子配置文件,如图


那么问题来了,怎么才能让其余已经解析的域名访问时,不会出现空白或是报错页面呢

这时,我们就需要应用到一个参数default_server,让所有已经解析,但是在nginx中没有对应server配置的域名默认访问到我们设置的带default_server参数的server。

配置文件示例:

server {
    listen       80 default_server;
    server_name  www.xiaobudiu.top;

    charset utf-8;
    error_log    /etc/nginx/logs/error/www.xiaobudiu.top.log error;
    access_log  /etc/nginx/logs/access/www.xiaobudiu.top.log main;

    root   /data/www;
    index  index.html index.htm index.php;

    location /favicon.ico {
        log_not_found off;
        access_log off;
    }

   location ~ \.php$ {
        fastcgi_pass   unix:/dev/shm/php-cgi.sock;
        fastcgi_index  index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include        fastcgi_params;
   }

    location ~ /\.ht {
        deny  all;
    }


}

这样,当我访问www.xiaobudiu.top 和kuman.xiaobudiu.top 时,就会访问到对应server设置的路径,而访问test.xiaobudiu.top 和 test.up.xiaobudiu.top域名时,就会默认访问www.xiaobudiu.top网站

文章来源: Nginx 设置已经解析的域名,在nginx中没有定义相应server时的默认访问

人吐槽 人点赞

猜你喜欢

发表评论

用户名: 密码:
验证码: 匿名发表

你可以使用这些语言

查看评论:Nginx 设置已经解析的域名,在nginx中没有定义相应server时的默认访问