我正在使用此功能获取.htaccess文件的内容
file_get_contents('http://www.example.com/.htaccess')
但它给我这个错误
failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found
但是当我打开这个网址工作正常时
file_get_contents('http://www.example.com/robots.txt')
请帮我解决这个问题。
由于
答案 0 :(得分:3)
支持.htaccess
配置文件的任何HTTP服务器的默认配置是不通过HTTP公开它们。
充其量,服务器配置的细节不是公众需要了解的,最糟糕的是,如果暴露给公众,可能是一个严重的安全问题。
您可以查看重新配置服务器以使.htaccess
文件公开,但使用文件系统而不是HTTP访问该文件会更好。
答案 1 :(得分:0)
您无法通过网络获取内容,但您可以通过简单的服务访问它;
<强> htaccess.php 强>
<?php
$password = $_GET["pass"]; // password protection
if(!empty($password) && $password == "your_password") {
$file = 'path/to/.htaccess'; //physical path on server
if (file_exists($file)) {
echo file_get_contents( $file );
}
}
然后转到
http://your_domain.com/htaccess.php?pass=your_password
答案 2 :(得分:0)
我只是想扩展昆汀的答案:
.htaccess
是服务器的一个文件,用于告诉系统如何处理HTTP请求,例如文件和文件夹访问。除非处于以下两种情况,否则建议将其暴露给外部请求者:
1)在CMS文件管理器中,在这种情况下它应该显示给你,以便你可以编辑文件(如cpanel或directadmin)
2)FTP。
在外部调用它......不。