我正在努力使用.htaccess文件。
我的文件夹结构如下:
-application
-config
-db
-library
-public
-scrips
-tmp
.htaccess (1)
htaccess 1的内容
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ public/ [L]
RewriteRule (.*) public/$1 [L]
</IfModule>
这很棒!但是现在我正在执行对example.com/script/cron.php的请求,但它失败了,因为它被重定向为public。我怎么能防止这种情况?
答案 0 :(得分:0)
不需要你的第一条规则。 (.*)
也会匹配空字符串,因此$1
将替换为...... well ...一个空字符串。要排除/script
,您需要使用RewriteCond
,如此:
RewriteCond %{REQUEST_URI} !^/script/
RewriteRule ^(.*)$ /public/$1 [L]