【发布时间】:2018-01-17 05:50:40
【问题描述】:
我已将我的网站上传到我服务器上的一个子目录下,结构看起来像这样
根
----博客
--------.htaccess
----苹果
----.htaccess
现在我在 /blog/.htaccess 文件中编写了一条规则,它将用户重定向到
我通过添加以下规则来做到这一点。
RewriteEngine On
RewriteBase /blog/
RewriteCond %{HTTP_HOST} !^www\. [NC,OR]
RewriteCond %{HTTPS} !on
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://www.%1%{REQUEST_URI} [R=301,L,NE]
到目前为止一切都很好,它的工作方式完全符合要求,现在真正的问题来了。用户希望当任何人在没有前一个博客的情况下访问域时,它将添加 /blog/ 并将用户重定向到博客站点,并且此规则不应影响任何子域意味着如果
用户输入网址。
example.com
他应该被重定向到。
当他输入网址时。
apple.example.com
他应该重定向到
apple.example.com
现在为了做到这一点,我正在编写以下规则,但它不起作用,规则如下所示。
RewriteEngine on
RewriteCond %{HTTP_HOST} ^example\.com$
RewriteRule (.*) https://example.com/$1 [R=301,L]
RewriteRule ^$ /blog/ [L]
我不知道我做错了什么。
我添加了很多细节,因为我认为可能是博客目录中的 .htaccess 文件有问题。
【问题讨论】:
标签: php apache .htaccess redirect mod-rewrite