.htaccess htaccess重定向无法正常工作

.htaccess htaccess重定向无法正常工作,.htaccess,.htaccess,我试图完成以下任务,但我的代码不起作用 1) 我想做非万维网到万维网或万维网到非万维网 2) 桌面用户应重定向到example.com/homepage 3) 从url中删除或隐藏/主页 4) 将移动用户重定向到example.com/m 这是我的代码,它不起作用,太多的问题要列出,但在我脑海中,我能想到我遇到的两个问题:“无法打开页面,因为发生了太多重定向”,移动用户被带到/homepage而不是/m # remove www RewriteCond %{HTTP_HOST} ^www\.(.

我试图完成以下任务,但我的代码不起作用 1) 我想做非万维网到万维网或万维网到非万维网 2) 桌面用户应重定向到example.com/homepage 3) 从url中删除或隐藏/主页 4) 将移动用户重定向到example.com/m

这是我的代码,它不起作用,太多的问题要列出,但在我脑海中,我能想到我遇到的两个问题:“无法打开页面,因为发生了太多重定向”,移动用户被带到/homepage而不是/m

# remove www
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^ http://%1%{REQUEST_URI} [NE,R=301,L]

RewriteEngine On
RewriteRule ^$ /homepage [L]


RewriteEngine On 
RewriteRule ^$ homepage/ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ homepage/$1 


RewriteCond %{HTTP_USER_AGENT} ^.*(ip(ad|od|hone)|blackberry|iemobile|android).*$ [NC]
RewriteCond %{REQUEST_URI} !^/m/.*
RewriteRule ^.*$ http://example.com/m [R=301,L]

请帮帮我,我很沮丧,我该如何改变这段代码才能让它正常工作?

不幸的是,我对正则表达式和htacces中的重定向并不友好,但我自己也得到了类似的代码

听起来你的代码好像陷入了重定向循环,而浏览器正在阻止它继续。 我知道这不是一个完整的答案,但希望这能帮助您对代码有更多的理解

希望其他人可以插话,否则我可以挖掘出我在电脑上工作的代码,并希望给你一个更好的回应


-从我的手机发送的www/non-www很好

对于主页内容,您需要做两件事:确保您要重写到主页目录中的内容确实存在(否则会出现500服务器错误)并排除移动用户代理

所以这个东西:

RewriteEngine On
RewriteRule ^$ /homepage [L]


RewriteEngine On 
RewriteRule ^$ homepage/ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ homepage/$1 
需要如下所示:

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{HTTP_USER_AGENT} !^.*(ip(ad|od|hone)|blackberry|iemobile|android).*$ [NC]
RewriteCond %{DOCUMENT_ROOT}/homepage%{REQUEST_URI} -f [OR]
RewriteCond %{DOCUMENT_ROOT}/homepage%{REQUEST_URI} -d [OR]
RewriteRule ^(.*)$ homepage/$1 [L]

还是不行。在桌面上,它将转到root,而不会转到/homepage,在移动设备上,页面不会加载,它说无法加载,因为服务器停止响应。