代码之家  ›  专栏  ›  技术社区  ›  The Quantum Physicist

保护我的php文件,以防apache的php模块无法工作

  •  2
  • The Quantum Physicist  · 技术社区  · 9 年前

    前几天,我的网站上发生了一件事,吓了我一跳,告诉我我的Apache虚拟主机设置有一个安全漏洞。

    我使用的php7.0来自 DotDeb .我是 sudo apt-get upgrade 我的Debian Jessie,由于某种原因,apache的php模块被禁用了。我没有注意到这一点,但结果是我网站上的所有php文件都可以下载!这造成了安全风险,例如,我的数据库密码对我网站的访问者可见。

    什么是确保此类事件不会发生的正确配置?例如,如果php不存在,如何使apache失败?或者任何其他解决方案,在这样的事件中不会将我的php文件提供给我的网站访问者!

    以下是我当前的虚拟主机配置。

    <VirtualHost *:443>
        DocumentRoot /web/root/directory
        ServerName www.example.com
    
        <IfModule mod_rewrite.c>
          RewriteEngine On
        </IfModule>
        php_admin_flag engine on
        SSLEngine on
        SSLProtocol all -SSLv2 -SSLv3
        SSLCompression off
        SSLCipherSuite AES256+EECDH:AES256+EDH
    
       SSLCertificateFile /path/to/cert.crt
       SSLCertificateKeyFile /path/to/key.key
       SSLCertificateChainFile /path/to/chain.chn
    </VirtualHost>
    
    1 回复  |  直到 9 年前
        1
  •  1
  •   Chris    9 年前

    也许你想要这样的东西?

    <Directory />
        <IfModule !mod_php7.c>
            Deny from all
        </IfModule>
    </Directory>