如何在 codeigniter 中使用 .htaccess 限制图像文件夹

2024-04-02

我有包含图像文件夹的 codeigniter 项目,我想让它无法通过直接 url 访问假设有人输入 url

http://localhost/project/images/Pricelistupdated.pdf

然后它将直接在浏览器选项卡中打开而无需登录,所以我想将其禁用。当用户登录并单击下载链接时,只会下载文件并在新选项卡中打开。当任何人在我使用的浏览器中输入直接网址时,它都无法打开

RewriteEngine on 
RewriteCond %{HTTP_REFERER} !^http://(www\.)?projects/project/ [NC] 
RewriteCond %{HTTP_REFERER} !^http://(www\.)?projects/project/.*$ [NC] 
RewriteRule \.(pdf|PDF|jpg|png|gif|PNG)$ - [F]

但此代码还禁用下载并在新选项卡中打开功能


如果您创建了一个额外的文件夹,默认情况下无法提供codeigniter框架。

Step-1

  • 在项目根目录中创建一个 .htaccess 文件。

Step-2

将此代码保存在下面提供的 htaccess 文件中:

<IfModule mod_rewrite.c>
Options -Indexes
RewriteEngine on
RewriteBase /Project_name/
RewriteCond $1 !^(index\.php|images|css|js|robots\.txt|favicon\.ico)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php/$1 [L,QSA]
</IfModule>

Step-3

  • 如果根目录中已经存在 htaccess 文件。只需在旧的 .htaccess 文件中添加该代码行即可。按照如下Step-2例子

    选项-索引

现在检查一下。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 codeigniter 中使用 .htaccess 限制图像文件夹 的相关文章