同一服务器上Bugzilla与MediaWiki的Apache配置问题求助
问题分析与解决方案
问题根源
当前Apache配置中,两个虚拟主机均监听*:80端口,Apache会将加载顺序更早的虚拟主机作为默认主机。当请求MediaWiki域名时,若未被正确匹配到对应的VirtualHost块,会默认路由到Bugzilla的虚拟主机,而Bugzilla的目录下不存在MediaWiki的资源,因此返回404错误。
修复步骤
1. 确认ServerName配置准确性
确保两个虚拟主机的ServerName分别对应各自的访问域名(例如bugzilla.yourdomain.com和wiki.yourdomain.com),且域名已通过本地hosts文件或DNS服务正确解析到虚拟机IP。
2. 修正虚拟主机配置
以下是调整后的配置示例:
bugzilla.conf
<VirtualHost *:80> ServerName bugzilla.yourdomain.com DocumentRoot /var/www/html/bugzilla/ <Directory /var/www/html/bugzilla/> AddHandler cgi-script .cgi Options +Indexes +ExecCGI DirectoryIndex index.cgi AllowOverride Limit FileInfo Indexes Options AuthConfig </Directory> ErrorLog /var/log/apache2/bugzilla_error.log CustomLog /var/log/apache2/bugzilla_access.log common </VirtualHost>
mediawiki.conf
<VirtualHost *:80> ServerName wiki.yourdomain.com DocumentRoot /var/www/mediawiki <Directory /var/www/mediawiki> AllowOverride all Require all granted </Directory> # According MWiki Manual:Security php_flag register_globals off ErrorLog ${APACHE_LOG_DIR}/wiki.local.error.log CustomLog ${APACHE_LOG_DIR}/wiki.local.access.log combined </VirtualHost>
3. 重启Apache服务
执行命令使配置生效:
sudo systemctl restart apache2
验证
分别访问两个域名,确认Bugzilla和MediaWiki均可正常加载。
内容的提问来源于stack exchange,提问作者Puneet Naik
相关产品推荐
相关产品推荐

