htAccess 从子域到子目录路径的内部重写



我至少 24 小时忙于这个主题,我似乎无法让这个脚本工作。脚本根本不重定向。

RewriteEngine On
RewriteCond %{HTTP_HOST} ^m.skynet.com$
RewriteRule ^/(.*)$ /mobile/final/$1 [L,NC]

我做错了什么?

更新:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^m.skynet.com$
RewriteCond %{REQUEST_URI} !^/mobile/final/
RewriteRule ^(.*)$ /mobile/final/$1 [L,NC]

这部分有效,但像 m.skynet.com\download.php 这样的链接不会被重定向

更新:45分钟后

现在它突然起作用了。但是URL在FireFox中被重写,而在Chrome中它可以正常工作

更新似乎Firefox的问题是由我之前使用的301重定向引起的,必须刷新缓存。让它再次正常工作

从匹配中删除前导斜杠:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^m.skynet.com$
RewriteCond %{REQUEST_URI} !^/mobile/final/
RewriteRule ^(.*)$ /mobile/final/$1 [L,NC]
  • .htaccess是每个目录指令,Apache从URI模式中删除当前目录路径(因此RewriteRule前斜杠)。
  • 您需要RewriteCond %{REQUEST_URI} !^/mobile/final/以防止循环。

最新更新