LAMP - 使目录只能由某些网页访问
LAMP - make directory accessible only to certain web pages
我正在修改 LAMP 服务器 运行 Apache2 上的网页,想知道是否可以让一个目录只能供您的网页访问,而不能从外部访问?
示例场景:
要保护的目录:dir1 包含图像(jpg、png)
我自己的网页:mypage.html 从 dir1
调用图像
我的网站:www.myweb.com 包含 dir1 和 mypage.html
目前可以通过www.myweb.com/dir1/somefile.jpg或调用[=68=访问网站内的文件]
我希望它只能通过调用 mypage.html
访问
我试过以下方法:
修改 .htaccess 以禁止访问图像类型
<files "*.jpg">
deny from all
</files>
(不起作用,因为 mypage.html 也无法访问它)
修改 apache2 配置文件:
<Directory /var/www/dir1>
AllowOverride None
<Limit GET POST OPTIONS>
Order deny,allow
Deny from all
</Limit>
</Directory>
(这实际上是半工作的,因为它允许我写入目录但不能读取,也许可以修改它以允许来自内部网页的请求通过?)
我想总结一下,有没有办法让 Apache2 只接受访问目录的请求,前提是它属于您选择的某个 url?
提前致谢。
所以,我认为到目前为止我采用的方法确实行不通,并且发现您实际上可以调用 php 函数,其中
<img src='somefile.php?query=xxx' alt='pic'>
我在 somefile.php 中的哪个位置接收从上面的查询创建的 img 文件名。
echo file_get_contents($imgresource);
通过从 php 脚本提供图像并阻止此 php 脚本在没有适当凭据、会话、cookie 和 IP 阻止的情况下被调用,可以设置一些安全设置。
所以我想它并没有真正回答仅阻止访问某些 URL 的整个问题,但它的目的是无法从外部访问,因为我已经将目录埋在下面(或上面) ?)无法从 url 只能从内部脚本调用的 Web 根目录。
我正在修改 LAMP 服务器 运行 Apache2 上的网页,想知道是否可以让一个目录只能供您的网页访问,而不能从外部访问?
示例场景:
要保护的目录:dir1 包含图像(jpg、png)
我自己的网页:mypage.html 从 dir1
调用图像我的网站:www.myweb.com 包含 dir1 和 mypage.html
目前可以通过www.myweb.com/dir1/somefile.jpg或调用[=68=访问网站内的文件]
我希望它只能通过调用 mypage.html
访问我试过以下方法:
修改 .htaccess 以禁止访问图像类型
<files "*.jpg"> deny from all </files>
(不起作用,因为 mypage.html 也无法访问它)
修改 apache2 配置文件:
<Directory /var/www/dir1> AllowOverride None <Limit GET POST OPTIONS> Order deny,allow Deny from all </Limit> </Directory>
(这实际上是半工作的,因为它允许我写入目录但不能读取,也许可以修改它以允许来自内部网页的请求通过?)
我想总结一下,有没有办法让 Apache2 只接受访问目录的请求,前提是它属于您选择的某个 url?
提前致谢。
所以,我认为到目前为止我采用的方法确实行不通,并且发现您实际上可以调用 php 函数,其中
<img src='somefile.php?query=xxx' alt='pic'>
我在 somefile.php 中的哪个位置接收从上面的查询创建的 img 文件名。
echo file_get_contents($imgresource);
通过从 php 脚本提供图像并阻止此 php 脚本在没有适当凭据、会话、cookie 和 IP 阻止的情况下被调用,可以设置一些安全设置。
所以我想它并没有真正回答仅阻止访问某些 URL 的整个问题,但它的目的是无法从外部访问,因为我已经将目录埋在下面(或上面) ?)无法从 url 只能从内部脚本调用的 Web 根目录。