我有一个网络项目,我为我的项目创建了一个外部照片库。照片库位于Web根目录之外,例如我的Codeigniter项目位于C:\ wamp \ www \ myprject \ application \但是我的照片库在C:\ wamp \ www \ myprject \ Lib \
下我的.htaccess文件(在我的应用程序文件夹下)使用以下命令成功显示库:
.htaccess 文件
RewriteEngine on
RewriteCond $1 !^(index\.php|images|Lib|css|js|robots\.txt)
RewriteRule ^(.*)$ /index.php?$1 [L]
但问题是这个.htaccess文件还显示我的error_log文件以及库目录中的所有图像。 我需要在这个.htacess文件中进行哪些更改才能隐藏它?我只想显示(.jpg,gif,.bmp,.jpeg)文件。请帮忙。谢谢
答案 0 :(得分:1)
使用' FilesMatch'做解决方法。标签
在RewriteCond和RewriteRule之后添加:
<FilesMatch "Lib\.(htaccess|htpasswd|ini|log|error_log|error|sh|inc|bak)$">
Order Allow,Deny
Deny from all
</FilesMatch>
注意:请在管道&#39;之间添加您的错误日志文件的扩展名。 | &#39;符号。另外,请删除您不想要的扩展程序。
答案 1 :(得分:0)
我不是.htaccess大师,但您应该可以将其更改为:
## NOT TESTED ##
RewriteEngine on
RewriteCond $1 !^(index\.php|images|Lib\/*\.jpg|Lib\/*\.gif|Lib\/*\.bmp|Lib\/*\.jpeg|css|js|robots\.txt)
RewriteRule ^(.*)$ /index.php?$1 [L]
Lib\/*\.jpg
是Lib
目录下任何jpg文件的正则表达式