Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 保护web主机的配置文件_Php_Passwords_Config_Credentials_Hardcoded - Fatal编程技术网

Php 保护web主机的配置文件

Php 保护web主机的配置文件,php,passwords,config,credentials,hardcoded,Php,Passwords,Config,Credentials,Hardcoded,我最近用php对我的网站进行了安全审计。 安全审计报告建议不要将硬编码凭据保存在web主机的配置文件中 如何将其存储在其他地方以保护它确定您的案例。 根据您的要求,有许多方法可以保护配置文件 但是-没有系统是安全的 当您有自定义代码(例如:不使用如此完整的框架)时,您可以创建自定义配置文件。 您可以在web主机面板/public root目录中包含公共目录之外的内容 根据共享主机使用apache(基于)作为其web服务器, 您可以使用.htaccess设置重要的环境,例如: <IfModu

我最近用php对我的网站进行了安全审计。 安全审计报告建议不要将硬编码凭据保存在web主机的配置文件中

如何将其存储在其他地方以保护它

确定您的案例。 根据您的要求,有许多方法可以保护配置文件

但是-没有系统是安全的

当您有自定义代码(例如:不使用如此完整的框架)时,您可以创建自定义配置文件。 您可以在web主机面板/public root目录中包含公共目录之外的内容

根据共享主机使用apache(基于)作为其web服务器, 您可以使用.htaccess设置重要的环境,例如:

<IfModule mod_env.c>
SetEnv APP_ENVIRONMENT production
SetEnv DB_NAME database_name
SetEnv DB_PASS database_password
</IfModule>
并禁用对htaccess文件上所有隐藏文件的访问

# Deny access to hidden files - files that start with a dot (.)
<FilesMatch "^\.">
Order allow,deny
Deny from all
</FilesMatch>
#拒绝访问隐藏文件-以点(.)开头的文件
命令允许,拒绝
全盘否定
回到它取决于你的需要。
只要您尽最大努力使代码尽可能没有bug,配置文件就可以是安全的。

将其移到http服务器发布的服务器端文件系统部分之外。标记为需要更清晰:您当前如何存储凭据?您是否有权访问框架(例如可以使用.env和secrets的Symfony)?你有一个自动构建管道吗。在没有澄清的情况下,有太多的方法可以做到这一点。
# Deny access to hidden files - files that start with a dot (.)
<FilesMatch "^\.">
Order allow,deny
Deny from all
</FilesMatch>