如何在 codeigniter 中使用 .htaccess 限制图像文件夹
How can i restrict the image Folder using .htaccess in codeigniter
我有一个包含图像文件夹的 codeigniter 项目,我想让它无法直接访问 url 假设有人输入 url
http://localhost/project/images/Pricelistupdated.pdf
然后它将在浏览器选项卡中直接打开而无需登录,所以我想将其禁用。当用户登录并单击下载 link 时,只会下载该时间文件并在新选项卡中打开。当有人在浏览器中直接输入 url 时它无法打开我使用以下
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]
但此代码还禁用了下载和在新标签页中打开的功能
你应该遵循这个link
How to restrict access to files in a folder in codeigniter
如post所述,您需要拒绝所有对文件的直接访问,并在用户使用身份验证登录时通过控制器读取文件。
很简单!你可以试试这个!
只需使用以下代码创建一个 htaccess 文件:-
Options -Indexes
将此文件保存到您的图像文件夹中。然后检查..
如果您创建一个额外的文件夹,默认情况下无法提供 codeigniter 框架。
第一步
- 在项目根目录中创建一个 .htaccess 文件。
第 2 步
将此代码保存在下面提供的 htaccess 文件中:
<IfModule mod_rewrite.c>
Options -Indexes
RewriteEngine on
RewriteBase /Project_name/
RewriteCond !^(index\.php|images|css|js|robots\.txt|favicon\.ico)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php/ [L,QSA]
</IfModule>
第三步
如果 root 中已经存在 htaccess 文件。只需在旧的 .htaccess 文件中添加代码行。按照 Step-2 示例
选项-索引
现在检查一下。
我有一个包含图像文件夹的 codeigniter 项目,我想让它无法直接访问 url 假设有人输入 url
http://localhost/project/images/Pricelistupdated.pdf
然后它将在浏览器选项卡中直接打开而无需登录,所以我想将其禁用。当用户登录并单击下载 link 时,只会下载该时间文件并在新选项卡中打开。当有人在浏览器中直接输入 url 时它无法打开我使用以下
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]
但此代码还禁用了下载和在新标签页中打开的功能
你应该遵循这个link How to restrict access to files in a folder in codeigniter
如post所述,您需要拒绝所有对文件的直接访问,并在用户使用身份验证登录时通过控制器读取文件。
很简单!你可以试试这个! 只需使用以下代码创建一个 htaccess 文件:-
Options -Indexes
将此文件保存到您的图像文件夹中。然后检查..
如果您创建一个额外的文件夹,默认情况下无法提供 codeigniter 框架。
第一步
- 在项目根目录中创建一个 .htaccess 文件。
第 2 步
将此代码保存在下面提供的 htaccess 文件中:
<IfModule mod_rewrite.c>
Options -Indexes
RewriteEngine on
RewriteBase /Project_name/
RewriteCond !^(index\.php|images|css|js|robots\.txt|favicon\.ico)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php/ [L,QSA]
</IfModule>
第三步
如果 root 中已经存在 htaccess 文件。只需在旧的 .htaccess 文件中添加代码行。按照 Step-2 示例
选项-索引
现在检查一下。