我在 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>