在多站点安装中将www与非www一起用于主域

时间:2015-03-27 作者:Naweed Chougle

我有一个在Nginx上运行的多站点安装。

在我的站点配置文件中,我已将服务器块设置为:

server{
        listen 80 default_server;
        server_name example.com *.example.com;
        server_name_in_redirect off;

        access_log   /var/log/nginx/example.com.access.log;
        error_log    /var/log/nginx/example.com.error.log;

        root /var/www/example.com/htdocs;
        index index.php;

        if (!-e $request_filename) {
                rewrite /wp-admin$ $scheme://$host$uri/ permanent;
                rewrite ^(/[^/]+)?(/wp-.*) $2 last;
                rewrite ^(/[^/]+)?(/.*\\.php) $2 last;
        }

        location / {
                try_files $uri $uri/ /index.php?$args;
        }
}
现在,每当我进入www.example。在浏览器中,我被重定向到示例。com。

然而,我想举个例子。com重定向到www.example。com。

我还计划在www.example中使用HTTPS。com公司

要做到这一点,我还需要向配置文件中添加什么?

1 个回复
SO网友:kovshenin

您的nginx配置很好,您只需要在“站点”部分的多站点设置中编辑站点名称,或者在整个数据库中运行搜索替换,以将非www链接替换为www链接。我不确定,但您可能还需要为您的非www域创建重定向,尽管上次我尝试了它自己神奇地工作。

也就是说,使用WWW的唯一合法原因是当某个服务无法承载您的DNS,或者您选择不使用该服务承载您的DNS,并且由于负载平衡等原因,DNS是动态的。在这种情况下,唯一的选择是使用CNAME条目,CNAME条目只能应用于子域。谷歌应用引擎(GoogleAppEngine)一直如此,直到他们开始为客户托管DNS。

结束

相关推荐

WordPress MultiSite中的MySQL数据库

我有一个多站点安装。这是一个全新的安装,目前所有网站都使用相同的数据库。你会在这些建议中推荐什么?为什么?使用相同方法的利弊?Option 1 - 所有WP站点的相同数据库Option 2 - 每个WP站点的不同数据库谢谢