[英]Mod_rewrite redirect to specific file
我将首先向您展示我的代码,然后再说明我要实现的目标。
RewriteEngine On
RewriteRule ^core$ library/core.php [L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^$ public/ [L]
RewriteRule ^(.*)$ public/$1 [L]
我正在使用core.php作为ajax发送的多个请求的处理器文件。 当我发出请求时,它将类似于“ http:// mysite / core ”,我希望它通过.htaccess文件发出并直接发送至“ http://mysite/library/core.php ”。 我对其进行了测试,并且可以正常运行(我猜这很奇怪)。 但是,如果请求不是“ http:// mysite / core ”,我想测试该请求是否既不是文件也不是文件夹,并且如果它不是其中的任何一个,我想:
如果删除最后一个RewriteRule,一切正常。 但是,如果允许的话(即使我访问“ http:// mysite / core ”),它也会一直将我重定向到“ http://mysite/public/library/core.php ”。 我不知道发生了什么事。 就像他不知道我的第一个RewriteRule中的[L]标志一样。
任何帮助将非常感激。 提前致谢。
有这种方式:
RewriteEngine On
RewriteRule ^core$ library/core.php [L,NC]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ public/$1 [L]
RewriteCond
仅适用于下一个RewriteRule
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.