我的网站从很多页面构建,这些页面分为两类,一类是“html”文件,“core”文件包含“html”文件所需的功能和服务器端代码,他们的两个PHP文件。
有一种情况是“核心”文件不能从“html”文件中请求,我想阻止它。
我希望“核心”文件只能在“html”文件请求时打开,否则会显示404错误,这可能吗?
注意*:我之前说过,“html”和“core”文件都是PHP文件。提前谢谢你!
答案 0 :(得分:3)
在Core中制作验证码。
有点像,验证一个常量“html”,如果已定义,则运行代码,如果没有,则抛出404错误。
http://br2.php.net/manual/pt_BR/function.constant.php
其他方法是在使用apache服务器时阻止使用htaccess。
HTML(php文件)
define('HTML');
核心(php文件)
if(!defined('HTML')) { /* Display 404 error */ }
答案 1 :(得分:2)
您可以使用.htaccess来限制对相关文件的访问。
例如。如果"核心文件"有一个.php扩展名,而所有其他人都有.html你可以添加.htaccess像:
<Files ~ "\.php$">
Order allow,deny
Deny from all
</Files>
或者,如果您所有的核心文件都是&#34;在目录中,您可以通过输入
来限制访问权限<Directory ~ "\core">
Order allow,deny
Deny from all
</Directory>
请记住让AllowOveride All以便apache使用您指定的.htaccess。
答案 2 :(得分:1)
您可以通过服务器设置控制它,也可以更好地将它们移出文档根目录。