我有这个非常大的问题,我一直试图解决在过去的几天没有成功。 我有一些文件是课程表,这些文件从外部源(html格式)导入到服务器。 我需要阻止直接访问这些文件。 它们由PHP脚本显示。 所以,这些是假设: – 通过php脚本显示的文件 – 文件不能以任何方式修改(html文件) – 必须没有直接访问这些文件 – 服务器是Apache
有任何想法吗? 我尝试过使用htaccess,但我可能不够能干,因为它阻止了对php脚本文件的访问。
提前致谢。
我想另一种方法是:
如果您要求使用.htaccess的一个或多个文件保护,那么你可以做下面的事情…
AuthName "Restricted Area" AuthType Basic AuthUserFile /path/to/passwordfile/.htpasswd AuthGroupFile /dev/null <Files admin.php> require valid-user </Files> <Files protected.htm> require valid-user </Files> <Files protected2.htm> require valid-user </Files>
您还需要创build一个.htpasswd文件,并将AuthUserFile
path更新为该文件的位置….有一个可用的工具http://tools.dynamicdrive.com/password/来创build这些.htaccess
和.htpasswd
文件。
文件通过php脚本显示
将密码存储在某处( 安全地 )。 HTML表单提交凭证。 $_POST
来读取它们。 PDO来阅读它们。 包括如果用户被授权包括文件。
文件不能以任何方式修改(html文件)
所有的逻辑都在PHP中。 所有凭证都存储在外部。
必须不能直接访问这些文件
将文件保存在DocumentRoot之外。
使用.htaccess
示例重写规则
RewriteEngine on RewriteRule ^folder/$ http://path_to_different_page.php