我刚刚开始学习 Apache 服务器。
我apache2(version 2.4.41)
基于 Ubuntu、WSL2 Windows10 进行了安装,并遵循本教程建立网页。
我创建了一个网页进行测试,路径为:
/var/www/info.dev/html/index.html
问题是,在我一步一步按照教程操作之后,我的网页只能通过以下方式运行localhost
:
这是我的/etc/hosts
文件:
我的info.dev.conf
文件:
info.dev
如果我使用自定义域(如或),它将不起作用www.info.dev
:
我被这个问题困扰了好几天,尝试了所有我能在谷歌上找到的解决方案,但似乎没有一个对我有用。如果有人能帮我解决,我将不胜感激。
答案1
根据您分享的大量图片,我敢说您编辑了“错误”的hosts
文件。您不需要更改 Ubuntu 中的文件,而是需要编辑 Windows 中的文件(位于 )C:\Windows\System32\Drivers\etc\hosts
。在那里,您可以添加记录。
代替:
# localhost name resolution is handled within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost
和:
127.0.0.1 localhost
127.0.0.1 info.dev
::1 localhost
::1 info.dev
您不需要为诸如 之类的子域名创建记录www.info.dev
。请务必将其替换127.0.0.1
为您的 WSL2 Ubuntu 实例的 IP 地址。您可以通过wsl hostname -I
在 PowerShell 或命令提示符中键入以下内容来找到它:。
在您的 Apache 配置文件中,您可以更新ServerAlias
以包含通配符,以确保域的所有流量都正确路由:
ServerAlias info.dev *.info.dev
info.dev
两者都有就ServerName
可以ServerAlias
了。如果愿意,您可以将其从别名中排除。