我正在开展一个项目,一个小项目。 而且我很乐意禁止通过URL直接访问文件。
就像你有一个名为“stock”的文件夹,其中包含所有图像。 例如,你拿图像猫,我想禁止通过这个URL直接访问这个文件mysite.com/stock/cat.jpeg
但是,与此同时,我希望能够在我的网站上使用这些图像。
实现这一目标的最佳方式是什么?我在“stock”文件夹中使用了.htaccess,其中包含了Deny。但是我无法使用该文件。
目前,我在localhost上工作,但我会把它放到现场。我的框架(PHP)是CodeIgniter。
谢谢,祝你有个美好的一天:)
答案 0 :(得分:0)
你仍然可以使用.htaccess,我提供了一些你可以使用的代码,删除www。域名和域名tld并用最适合你的东西替换它。
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http://(www\.)?domain\.ltd [NC]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?domain\.ltd.*$ [NC]
RewriteRule \.(gif|jpg|js|txt)$ /messageforcurious [L]
这应该使它只允许本地访问允许。
如果您要求允许IP地址连接,那么您可以使用以下内容:
order deny,allow
deny from all
allow from <your ip>
如果以上操作不起作用,您还可以编辑.htaccess文件,看看是否可行:
RewriteEngine On
RewriteCond %{REMOTE_ADDR} !^123\.456\.789\.123$
RewriteRule .* - [F]
这里的一些代码来自this回答。