我正在尝试阻止对某些文件的访问。我的服务器上有很多这样的文件
filename_sql.php
基本上我需要禁止用户直接访问sql.php文件:
http://url.com/filename_sql.php <<<
我已经使用此代码创建了一个 htaccess,但我可以访问直接调用 url 的文件。我错了什么?
<Files ~ "\.sql(.php)?$">
Order allow,deny
Deny from all
</Files>
谢谢大家。
我正在尝试阻止对某些文件的访问。我的服务器上有很多这样的文件
filename_sql.php
基本上我需要禁止用户直接访问sql.php文件:
http://url.com/filename_sql.php <<<
我已经使用此代码创建了一个 htaccess,但我可以访问直接调用 url 的文件。我错了什么?
<Files ~ "\.sql(.php)?$">
Order allow,deny
Deny from all
</Files>
谢谢大家。
您的正则表达式匹配以 结尾的文件名".sql.php"
,但您列出的示例文件名以结尾"_sql.php"
如果您删除第一个句点,它应该匹配以下请求"filename_sql.php"
(或以 结尾的任何内容"sql.php"
):
<Files ~ "sql(\.php)?$">
Order allow,deny
Deny from all
</Files>
但是,防止这些文件被直接访问的更好方法是将它们移到根/公共目录之外。
我认为这会成功
<Files ~ "\.sql(\.php)?$">
Order allow,deny
Deny from all
</Files>
你忘了把 \ 放在 .php 之前。