首页 文章

Apache配置 . 如何禁止查看根文件夹

提问于
浏览
2

我添加了VirtualHost ServerAdmin root @ localhost DocumentRoot /var/www/html/blogovet.ru ServerName www.blogovet.ru ServerAlias blogovet.ru

但我在这个域中的脚本可以看到所有服务器文件/ *不仅在他的目录/var/www/html/blogovet.ru

如何禁止查看除DocumentRoot之外的文件?

2 回答

  • 0

    脚本将能够读取运行脚本的用户可以读取的所有文件 . 所以你应该确保你的web服务器不以root身份运行(它需要以root身份启动才能侦听端口80,但是应该将用户转换为例如“www”本身),然后确保该用户无法读取任何明智的文件 .

    您还可以使用SElinux获得额外的安全保护 .

  • 0

    我找到了PHP的这个解决方案(如果禁用cgi和ssi,看起来不错)

    <VirtualHost *:80>
        ServerAdmin root@localhost
        DocumentRoot /var/www/html/site.com
        ServerName www.site.com
        ServerAlias site.com
        ErrorLog /var/www/html/site.com/error-log
    #    TransferLog /var/www/html/site.com/transfer-log
    #    CustomLog /var/www/html/site.com/access-log common
        <IfModule mod_php5.c>
            php_admin_value upload_tmp_dir "/tmp"
            php_admin_value include_path ".:/usr/share/pear:/usr/share/php:/var/www/html/site.com"
            php_admin_value open_basedir "/var/www/html/site.com"
            php_admin_value doc_root "/var/www/html/site.com"
        </IfModule>
        <Directory "/var/www/html/site.com">
            AllowOverride All
            Order allow,deny
            Allow from all
        </Directory>
    </VirtualHost>
    

相关问题