vas*_*oFG 8 php apache .htaccess
我的大学有多个服务器,它们具有镜像相同的数据,所以我可以访问
foo.uni.edu/file.php
bar.uni.edu/file.php
Run Code Online (Sandbox Code Playgroud)
问题是,并非所有服务器都安装了PHP,所以任何人都可以下载我的php文件,如果他们通过没有安装PHP的服务器建立连接.有没有办法,可能用.htaccess来避免这种情况?如果安装PHP服务器,只允许打开PHP文件?
如果可以将文件存储在文档根目录之外,则可以通过将所有敏感数据存储在文档根目录之外来解决该问题。然后,您可以使用可公开访问的脚本include来访问这些文件。
因此,如果您上传到/username/public_html,并且public_html是您的文档根目录(例如,foo.uni.edu/file.php是/username/public_html/file.php),那么您将上传到/username/file.php并放置另一个脚本,其中/username/public_html仅包含类似的内容include('../file.php');
无论如何,这都是一个很好的做法,以防服务器上的配置错误导致 PHP 无法解析。
如果未启用,您还可以尝试使用IfModule和FilesMatch拒绝访问 PHP 文件:mod_php
<IfModule !mod_php.c>
<FilesMatch "\.php$">
Order Deny,Allow
Deny from All
</FilesMatch>
</IfModule>
Run Code Online (Sandbox Code Playgroud)
如果这不起作用,请尝试!mod_php5.c一下。