1

我有两个域 example.com 和 example.co.uk,它们在我的服务器上使用相同的应用程序。

我想根据用户输入的内容重写 URL 的地址。我想要的唯一 URL 是https://www.example.comhttps://www.example.co.uk

在我的.htaccess文件中,我有以下内容:

# Turn on URL rewriting
RewriteEngine On

RewriteCond %{HTTP_HOST} ^example\.co.uk$ [NC]
RewriteRule ^(.*)$ https://www.example.co.uk/$1 [L,R=301]

RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*)$ https://www.example.com/$1 [L,R=301]

如果我转到http://www.example.com它不添加https,如果我转到http://example.com它。使 ReWriteCond 匹配 www url 的最佳方法是什么?

4

1 回答 1

0

有这样的两条规则:

RewriteEngine On

# add www
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI}  [L,NE,R=301]

# turn on HTTPS
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI}  [L,NE,R=301]

这 2 条规则将处理您的两个域。

于 2013-11-05T11:04:09.083 回答