Apache .htaccess重定向/重写问题
我很难想出我该怎么做 我希望所有到www.mydomain.com/manager的请求重定向到m.mydomain.com 我正在努力:Apache .htaccess重定向/重写问题,apache,.htaccess,mod-rewrite,url-rewriting,rewrite,Apache,.htaccess,Mod Rewrite,Url Rewriting,Rewrite,我很难想出我该怎么做 我希望所有到www.mydomain.com/manager的请求重定向到m.mydomain.com 我正在努力: # Friendly URLs for the manager RewriteCond %{HTTP_HOST} ^(www.)?cloudcms.co$ RewriteRule ^manager/?$ http://m.cloudcms.co/ [NC,L,R] RewriteCond %{HTTP_HOST} ^(m.|manager.)?cloudc
# Friendly URLs for the manager
RewriteCond %{HTTP_HOST} ^(www.)?cloudcms.co$
RewriteRule ^manager/?$ http://m.cloudcms.co/ [NC,L,R]
RewriteCond %{HTTP_HOST} ^(m.|manager.)?cloudcms.co$
RewriteRule ^(/)?$ manager/ [L,QSA,NC]
然而,唯一真正正确重写的是第二个条件
我还尝试了以下方法
# Friendly URLs for the manager
RewriteCond %{HTTP_HOST} ^(www.)?cloudcms.co$
Redirect 301 /manager http://manager.cloudcms.co
RewriteCond %{HTTP_HOST} ^(m.|manager.)?cloudcms.co$
RewriteRule ^(/)?$ manager/ [L,QSA,NC]
但是它忽略了第二次重写您可能不想使用p标志,这对您来说是反向代理。尝试将其替换为
R
:
RewriteRule ^manager/?$ http://m.mydomain.com/ [NC,L,R]
根据我上面的评论:
在/manager
文件夹中是否有另一个.htaccess,或者在present.htaccess中是否有其他.htaccess`
我怀疑OP在您的文档根目录中有另一个.htaccess
。尝试删除它,这个简单的重定向将开始工作
OP提问:
我如何才能为任何可能进入和关闭的域执行此操作
尝试点击/manager文件夹?
只需将第一个重定向规则更改为:
# if not already on mobile domain
RewriteCond %{HTTP_HOST} !^m\. [NC
RewriteRule ^manager/?$ http://m.cloudcms.co/ [NC,L,R=301]
哪个URL不适合你?最上面的那个。试图强制所有到www.mydomain.com/manager的请求重定向到m.mydomain.com您在那里有代理的P
标志,因此它不会更改浏览器中的URL,但仍然会为您提供m.mydomain.com
:)中的内容。仍然没有。在/manager`文件夹中是否有另一个.htaccess或当前的任何其他.htaccess
?