3

我正在尝试阻止对某些文件的访问。我的服务器上有很多这样的文件

filename_sql.php

基本上我需要禁止用户直接访问sql.php文件:

http://url.com/filename_sql.php <<<

我已经使用此代码创建了一个 htaccess,但我可以访问直接调用 url 的文件。我错了什么?

<Files ~ "\.sql(.php)?$">
Order allow,deny
Deny from all
</Files>

谢谢大家。

4

2 回答 2

2

您的正则表达式匹配以 结尾的文件名".sql.php",但您列出的示例文件名以结尾"_sql.php"

如果您删除第一个句点,它应该匹配以下请求"filename_sql.php"(或以 结尾的任何内容"sql.php"):

<Files ~ "sql(\.php)?$">
    Order allow,deny
    Deny from all
</Files>

但是,防止这些文件被直接访问的更好方法是将它们移到根/公共目录之外。

于 2013-09-15T05:13:56.150 回答
0

我认为这会成功

<Files ~ "\.sql(\.php)?$">
Order allow,deny
Deny from all
</Files>

你忘了把 \ 放在 .php 之前。

于 2013-09-15T05:08:18.340 回答