Hen*_*uta 3 apache .htaccess mod-rewrite
更新:问题解决
了几个小时后,我终于明白问题是在文件夹权限(757而不是755).
该死的,我觉得自己像个白痴,但至少,问题解决了:)
感谢大家!
我的.htaccess和mod_rewrite有一个奇怪的问题.
目前,我在我的root上有以下.htaccess:
Options +FollowSymLinks
Options -MultiViews
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule . /index.php [NC,L]
Run Code Online (Sandbox Code Playgroud)
问题是:
我希望能够访问任何现有文件.
即: mysite.com/anydir/myfile.png - >打开anydir/myfile.png
- mysite.com/anydir/script.php - >打开anydir/script.php
- mysite.com/file.png - >打开文件.png
- mysite.com/notadir/imnotafile - >重写
但是,除了第二点之外,一切都有效.我file.php在我的test文件夹中,但是当我这样做时mysite.com/test/file.php,它会继续重写它,它不应该......
我做错了什么?
大概可以做到这一点:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)
更新1
在这部分代码中:
RewriteRule ^index\.php$ - [L]
Run Code Online (Sandbox Code Playgroud)
[L]立即停止重写过程,不再应用任何规则.所以,
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule . /index.php [NC,L]
Run Code Online (Sandbox Code Playgroud)
不解释.
更新2:
服务器将遵循符号链接:
Options +FollowSymLinks
Run Code Online (Sandbox Code Playgroud)
服务器将禁用多个视图:
Options -MultiViews
Run Code Online (Sandbox Code Playgroud)
将启用重写引擎:
RewriteEngine On
Run Code Online (Sandbox Code Playgroud)
重写的基目录将是/:
RewriteBase /
Run Code Online (Sandbox Code Playgroud)
如果请求与不存在的文件匹配,请继续:
RewriteCond %{REQUEST_FILENAME} !-f
Run Code Online (Sandbox Code Playgroud)
如果请求与不存在的目录匹配,请继续:
RewriteCond %{REQUEST_FILENAME} !-d
Run Code Online (Sandbox Code Playgroud)
index.php在不敏感的情况下重写,并停止执行下一个规则:
RewriteRule index.php [NC,L]
Run Code Online (Sandbox Code Playgroud)
所以,试试以下内容:
Options +FollowSymLinks
Options -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule index.php [NC,L]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
21376 次 |
| 最近记录: |