【发布时间】:2023-08-18 22:44:02
【问题描述】:
我已经搜索并试图找出这个问题好几个星期了,但没有结果:(我不擅长正则表达式。
我需要一个 .htaccess 正则表达式匹配,它将匹配所有文件、文件夹,并在 htaccess 中将它们重写到 /mimox.com/ 文件夹
所以我在服务器上得到的文件和文件夹是:
http://limiagrade.com/mimox.com/index.php
http://limiagrade.com/mimox.com/css/style.css
http://limiagrade.com/mimox.com/img/bg.jpg
http://limiagrade.com/mimox.com/img/header.jpg
http://limiagrade.com/mimox.com/faq.php
http://limiagrade.com/mimox.com/
我想让我的 htaccess 在 URL 中没有 mimox.com 的情况下访问我的文件。
所以当我访问时,例如:
http://limiagrade.com/faq.php
它应该使用 htaccess 重写为:
http://limiagrade.com/mimox.com/faq.php
我尝试了很多东西,但它们总是陷入无限循环..:/
【问题讨论】:
-
您可能只需要在规则前添加一个
RewriteCond %{REQUEST_FILENAME} !-f,这意味着如果请求的文件不存在,请继续执行该规则。 -
或者检查请求的文件路径中是否没有
mimox.com的条件。 -
能否请你写下重写所有文件的代码,除了那些包含 mimox.com/ 的文件
-
找到解决方案:RewriteEngine On RewriteCond %{HTTP_HOST} limiagrade\.com [NC] RewriteRule ^((?!.*(mimox.com)).*)$ mimox.com/$1
-
哇 O_o 不擅长正则表达式并在发布问题后 15 分钟内在解决方案中使用负面展望? O_o
标签: php regex apache .htaccess mod-rewrite