PHP 安全配置实战:一行 .htaccess 规则严防 config.php 泄露,守住数据库核心隐私
admin · 2026-05-23 15:58 · 14 次浏览
各位量盾安全社区的伙伴们,大家好!
日常搭建 PHP 网站时,像 config.php 这类存放数据库账号、密码、连接参数的文件,是站点的核心敏感资源。一旦被外网访客通过浏览器直接访问读取,数据库凭据极易泄露,进而可能引发数据被拖库、网站被篡改甚至服务器被恶意入侵等一系列严重安全风险。
最近自己在实际测试中,摸索出一套简单有效的防护方案,既能有效阻止外部直接访问,又不影响程序正常运行,在这里分享给大家。
很多朋友可能比较纠结:把配置文件移出网站根目录,调用时容易出错;留在根目录里,又担心被人通过 URL 直接查看源码。这里推荐使用 .htaccess 文件来做访问限制,它只拦截来自浏览器的直接 HTTP 请求,完全不会干扰网站内部的 include / require 引用、数据库连接以及各项功能调用。
简易防护配置代码
在网站根目录的 .htaccess 文件中,加入以下规则,即可精准拦截对 config.php 的直接访问:
apache
<Files "config.php">
Order Allow,Deny
Deny from all
</Files>
这段配置仅针对指定的高危文件进行访问拦截,不影响登录、后台、接口等其他正常页面的使用。
效果实测
外部防读取
从外网浏览器直接访问 http(s)://你的域名/config.php,页面返回空白,无任何源码输出。通过浏览器开发者工具可以看到请求被服务器拦截(返回 403 或空白响应),外部攻击者无法窃取任何配置信息。
内部正常调用
网站程序内部通过代码引入该文件后,数据库读写、站点各项功能均可正常运行,不会出现报错或功能失效问题。
补充小提示
环境适配
以上规则适用于 Apache 环境。如果你用的是 Nginx,可以在站点配置中改用对应的 location 拦截语句(例如 location ~ /config.php { deny all; }),效果相同。
多重加固
除了配置文件防护,日常也要注意定期清理网站目录中的多余文件、修改后台弱密码,多维度加固站点防线。
习惯养成
技术防护只是基础手段,平时养成不随意泄露源码、定期备份数据的习惯,才能最大程度规避网络安全隐患。
日常搭建 PHP 网站时,像 config.php 这类存放数据库账号、密码、连接参数的文件,是站点的核心敏感资源。一旦被外网访客通过浏览器直接访问读取,数据库凭据极易泄露,进而可能引发数据被拖库、网站被篡改甚至服务器被恶意入侵等一系列严重安全风险。
最近自己在实际测试中,摸索出一套简单有效的防护方案,既能有效阻止外部直接访问,又不影响程序正常运行,在这里分享给大家。
很多朋友可能比较纠结:把配置文件移出网站根目录,调用时容易出错;留在根目录里,又担心被人通过 URL 直接查看源码。这里推荐使用 .htaccess 文件来做访问限制,它只拦截来自浏览器的直接 HTTP 请求,完全不会干扰网站内部的 include / require 引用、数据库连接以及各项功能调用。
简易防护配置代码
在网站根目录的 .htaccess 文件中,加入以下规则,即可精准拦截对 config.php 的直接访问:
apache
<Files "config.php">
Order Allow,Deny
Deny from all
</Files>
这段配置仅针对指定的高危文件进行访问拦截,不影响登录、后台、接口等其他正常页面的使用。
效果实测
外部防读取
从外网浏览器直接访问 http(s)://你的域名/config.php,页面返回空白,无任何源码输出。通过浏览器开发者工具可以看到请求被服务器拦截(返回 403 或空白响应),外部攻击者无法窃取任何配置信息。
内部正常调用
网站程序内部通过代码引入该文件后,数据库读写、站点各项功能均可正常运行,不会出现报错或功能失效问题。
补充小提示
环境适配
以上规则适用于 Apache 环境。如果你用的是 Nginx,可以在站点配置中改用对应的 location 拦截语句(例如 location ~ /config.php { deny all; }),效果相同。
多重加固
除了配置文件防护,日常也要注意定期清理网站目录中的多余文件、修改后台弱密码,多维度加固站点防线。
习惯养成
技术防护只是基础手段,平时养成不随意泄露源码、定期备份数据的习惯,才能最大程度规避网络安全隐患。
评论 (0)
请先 登录 后发表评论