.htaccess将example.com重定向到example.com/admin\u面板
我想从“example.com”、“www.example.com”、“example2.com”和“www.example2.com”重定向到“”,我尝试了以下方法:.htaccess将example.com重定向到example.com/admin\u面板,.htaccess,.htaccess,我想从“example.com”、“www.example.com”、“example2.com”和“www.example2.com”重定向到“”,我尝试了以下方法: Options -Indexes Options +FollowSymLinks RewriteEngine On <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{THE_REQUEST} ^www.example2.eu/index\.php
Options -Indexes
Options +FollowSymLinks
RewriteEngine On
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{THE_REQUEST} ^www.example2.eu/index\.php
RewriteCond %{THE_REQUEST} ^www.example.eu/index\.php [OR]
RewriteCond %{THE_REQUEST} ^example2.eu/index\.php [OR]
RewriteCond %{THE_REQUEST} ^example.eu/index\.php [OR]
RewriteRule ^(.*)$ http://www.example.eu/admin_panel/index\.php$1 [L,R=301]
</IfModule>
选项-索引
选项+FollowSymLinks
重新启动发动机
重新启动发动机
重写cond%{THE_REQUEST}^www.example2.eu/index\.php
RewriteCond%{THE_REQUEST}^www.example.eu/index\.php[或]
RewriteCond%{THE_REQUEST}^example2.eu/index\.php[或]
RewriteCond%{THE_REQUEST}^example.eu/index\.php[或]
重写规则^(.*)$http://www.example.eu/admin_panel/index\.php$1[L,R=301]
但是它不起作用你的问题很模糊,因为它包含矛盾。例如,不清楚如何处理请求中的路径。
/index.php
是否要求应用重写
鉴于这一点和模糊的信息,我只能向您指出大致的方向:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.example2\.eu$ [OR]
RewriteCond %{HTTP_HOST} ^example2\.eu$ [OR]
RewriteCond %{HTTP_HOST} ^example\.eu$
RewriteRule ^/?(.*)$ http://www.example.eu/admin_panel/$1 [R=301]
RewriteCond %{HTTP_HOST} ^www\.example\.eu$
RewriteCond %{THE_REQUEST} !^/admin_panel
RewriteRule ^/?(.*)$ http://www.example.eu/admin_panel/$1 [R=301]
注意,我删除了主机名“www.example.eu”的条件测试,因为它会导致无休止的重写规则
给定的代码片段仅作为起点。它应该可以工作,但我没有亲自测试。它应该在http服务器主机配置或动态配置文件(“.htaccess”)中同样工作
还有一个一般性的注释:您应该总是更喜欢将这些规则放在http服务器主机配置中,而不是使用动态配置文件(“.htaccess”)。这些动态配置文件增加了复杂性,通常是导致意外行为的原因,难以调试,而且它们确实降低了http服务器的速度。只有在您无法访问真正的http服务器主机配置(读:真正廉价的服务提供商)或坚持编写自己的规则的应用程序(这显然是一个安全噩梦)的情况下,才提供它们作为最后一个选项 为了确保
[或]
运算符的位置很奇怪,您需要在第一个条件之后有一个运算符,在最后一个条件之后没有运算符。除此之外:%{the_REQUEST}
不包含请求的主机名,而只包含请求的路径。这是有明确记录的。你没有读过你使用的工具的文档吗?我收到了“太多重定向错误”,在链接中,它是https://example.eu/admin_panel/admin_panel/admin_panel/admin_panel/admin_panel/admin_panel/admin_panel/admin_panel/admin_panel/admin_panel/admin_panel/admin_panel/admin_panel/admin_panel/admin_panel/admin_panel/admin_panel/ …
不,我怀疑你是否真的使用了我发布的代码。我假设您使用了一个修改过的版本,在条件中仍然包含所有四个主机名?我之所以改变这一点是有原因的,因为这显然需要导致无休止的重写循环。请尝试使用我实际提供的代码片段,而不是类似的代码片段,然后从那里开始工作。