我在我的root上访问一个文件,例如 example.com/demo/provider ,它会重定向到 www.example.com 。
如何更正此问题,以便将其正确重定向到 www.example.com/demo/provider
我尝试了什么:
尝试1
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
尝试2
RewriteCond %{HTTP_HOST} ^example.com$
RewriteRule (.*) http://www.example.com/$1 [R=301,L]
尝试3
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
我也尝试了其他一些代码,任何建议都将受到赞赏谢谢!
注意: 我已经在Stackoverflow上搜索了可用的选项。但是,答案都没有对我有用。所以,这不是一个重复的问题。我尊重网站的规则和条款。
我的.htaccess文件位于提供程序文件夹中。您可以将其作为子域/目录。
答案 0 :(得分:1)
如果您的htaccess位于/ provider文件夹中,那么您必须使用目标网址中dir的完整路径,
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/demo/provider/$1 [R=301,L]
或者
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
这将正确地重定向您的网址:
到