htaccess仅当不在子域上时才应用重定向

时间:2019-01-02 04:48:26

标签: apache .htaccess

我目前正在处理具有多个域的代码库,其中可能包括子域(demo.example.com)或标准域(example.com)-一切都指向一个在服务器上运行的代码库与Apache。

我目前在htaccess文件中有以下规则:

A-强制用户使用https:

# ensure https
RewriteCond %{HTTP:X-Forwarded-Proto} !https 
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

B-强制用户访问www。

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

第二条规则的确会给想要在子域(例如beta.example.com)上运行的任何人造成问题,因为它迫使他们进入www。 (www.beta.example.com)无效。

设置htaccess的最佳方法是什么,以便仅在域不是子域的情况下才应用第二个(www。)规则?

在此先感谢您的帮助。

0 个答案:

没有答案