1 apache .htaccess mod-rewrite friendly-url
我在htdocs中有以下目录结构:
htdocs/
.htaccess
index.php
foo/
bar/
priv/
Run Code Online (Sandbox Code Playgroud)
我正在尝试实现干净的URL,并且基本上希望所有内容都通过index.php.我的.htaccess文件如下:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f # <- referring to this next
RewriteRule .* index.php [L]
Run Code Online (Sandbox Code Playgroud)
这种运作良好,在我可以访问内部合法文件的意义foo/和bar/直接,但我也是能够访问文件priv/这是我希望禁止什么.如何修改上面引用的行基本上说:"禁用不在的文件priv/"?
编辑:我试图避免必须做" priv/.htaccess" - >" deny from all",而是希望index.php像任何其他"漂亮的网址"转换一样处理这个.
您可以添加另一个RewriteCond条件以匹配^priv/并将其与OR组合:
RewriteCond $0 ^priv/ [OR]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule .* index.php [L]
Run Code Online (Sandbox Code Playgroud)
现在,如果匹配的部分路径开头,priv/ 或者请求无法映射到现有文件,则应用此规则.
| 归档时间: |
|
| 查看次数: |
8161 次 |
| 最近记录: |