DocumentRoot 是 /srv/www/htdocs;如何启用 ~/public_html?

DocumentRoot 是 /srv/www/htdocs;如何启用 ~/public_html?

我在 OpenSUSE 11.4 服务器上安装了 LAMP 堆栈。目前,DocumentRoot 设置为/srv/www/htdocs,但我希望我的用户能够~/public_html像在共享托管环境中一样使用。

我需要做哪些 Apache 配置更改?

我是否需要更改 MySQL 或服务器上运行的任何其他程序中的任何设置?

答案1

你需要确保mod_userdir已加载并启用。以下命令在我的 Debian 打包版 Apache 中将其打开。这对于 OpenSUSE 应该可以正常工作,尽管您可能需要在 LoadModule 指令中调整模块的路径。该命令可能已在您的 httpd.conf 中,但只是被注释掉了。至少您将需要 LoadModule 和第一个 UserDir 指令,尽管第二个指令可以防止 root 使用该目录,这可能是一个好主意。

LoadModule userdir_module /usr/lib/apache2/modules/mod_userdir.so
<IfModule mod_userdir.c>
        UserDir public_html
        UserDir disabled root

        <Directory /home/*/public_html>
                AllowOverride FileInfo AuthConfig Limit Indexes
                Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
                <Limit GET POST OPTIONS>
                        Order allow,deny
                        Allow from all
                </Limit>
                <LimitExcept GET POST OPTIONS>
                        Order deny,allow
                        Deny from all
                </LimitExcept>
        </Directory>
</IfModule>

相关内容