将 www 强制到 .htaccess 中的子域会导致 500 内部服务器错误
Forcing www to a sub domain in .htaccess cause 500 internal server error
假设我的域是
- example.com 指向服务器根目录 (public_html)
我已经创建了一个子域
- dev.example.com 指向目录(public_html/development)
我想始终使用 www 前缀打开我的两个站点(主域 + 子域)
为此,我将以下代码放入 .htaccess
RewriteCond %{HTTP_HOST} !^www\.
#RewriteCond %{HTTP_HOST} !^dev\.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/ [R=301,L]
主站点工作正常,它的重定向 domain.com 到 https://www.example.com
但是 dev.example.com 重定向到 https://www.dev.example.com/development 并导致 500 内部服务器错误。
它应该被重定向到 https://www.dev.example.com 而不是 https://www.dev.example.com/development
我哪里错了。
我在 .htaccess 中尝试了不同的代码,但没有任何效果。
将我的评论转化为答案可能会帮助面临类似问题的人。
在 development/.htaccess
中移动上述规则,以便每个目录指令 RewriteRule
设置 </code> 相对于 <code>development
目录而不是 public_html
目录的值。
确保在清除浏览器缓存后进行测试。
假设我的域是
- example.com 指向服务器根目录 (public_html)
我已经创建了一个子域
- dev.example.com 指向目录(public_html/development)
我想始终使用 www 前缀打开我的两个站点(主域 + 子域)
为此,我将以下代码放入 .htaccess
RewriteCond %{HTTP_HOST} !^www\.
#RewriteCond %{HTTP_HOST} !^dev\.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/ [R=301,L]
主站点工作正常,它的重定向 domain.com 到 https://www.example.com
但是 dev.example.com 重定向到 https://www.dev.example.com/development 并导致 500 内部服务器错误。 它应该被重定向到 https://www.dev.example.com 而不是 https://www.dev.example.com/development
我哪里错了。
我在 .htaccess 中尝试了不同的代码,但没有任何效果。
将我的评论转化为答案可能会帮助面临类似问题的人。
在 development/.htaccess
中移动上述规则,以便每个目录指令 RewriteRule
设置 </code> 相对于 <code>development
目录而不是 public_html
目录的值。
确保在清除浏览器缓存后进行测试。