You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux环境下XAMPP配置虚拟主机出现DocumentRoot指向错误问题

问题排查与解决步骤

1. 显式添加NameVirtualHost指令(适配部分XAMPP发行版)

打开你的httpd-vhosts.conf文件,在配置最顶部添加一行代码:

NameVirtualHost *:80

Apache 2.4之后该指令默认启用,但部分XAMPP打包的旧版本Apache需要显式声明才能基于域名匹配虚拟主机,否则会默认返回第一个匹配80端口的虚拟主机内容,或者 fallback 到默认htdocs配置。

2. 解决默认虚拟主机冲突

检查httpd.conf中是否存在默认的<VirtualHost *:80>配置指向XAMPP原生的htdocs目录,如果存在请将其注释,或者将该配置移动到httpd-vhosts.conf所有自定义虚拟主机之前作为默认 fallback 项:

# 可放在httpd-vhosts.conf最顶部
<VirtualHost *:80>
    DocumentRoot "/opt/lampp/htdocs"
    ServerName localhost
</VirtualHost>

调整后访问localhost就会返回默认htdocs内容,不会和自定义项目冲突。

3. 核对域名输入

你描述中提到访问webev.app1存在拼写错误,正确域名是webdev.app1,注意输入的域名需和配置的ServerName完全一致。

4. 重启Apache生效配置

所有配置修改后必须重启XAMPP的Apache服务才会生效,执行命令:

sudo /opt/lampp/lampp restartapache

5. 排查目录权限问题

Linux下Apache运行用户默认无权限访问普通用户home目录下的内容,需要给项目上级目录开放执行权限:

chmod +x /home/(user)
chmod -R 755 /home/(user)/webdev

同时确认Apache运行用户对webdev目录有读权限。

6. 验证配置正确性

执行XAMPP自带的Apache配置检查命令确认配置无语法错误:

sudo /opt/lampp/bin/apachectl -S

输出的虚拟主机列表中如果能看到webdev.app1和webdev.app2的配置,说明配置已被正确加载。

内容的提问来源于stack exchange,提问作者gowner

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 22:06:07