XAMPP 默认虚拟主机
Posted
技术标签:
【中文标题】XAMPP 默认虚拟主机【英文标题】:XAMPP Default Virtual Host 【发布时间】:2017-01-26 04:15:18 【问题描述】:我有一个 VPS,我已经在其中安装了 XAMPP,并配置了所有安全性。我启用了虚拟主机。我有一个db.example.com
,它将直接在网络上打开phpMyAdmin
。
httpd-vhosts.conf
中的条目如下:
<VirtualHost *:80>
ServerAdmin admin@example.com
DocumentRoot "/opt/lampp/phpmyadmin"
ServerName db.example.com
ServerAlias www.db.example.com
ErrorLog "logs/db.example.com-error_log"
CustomLog "logs/db.example.com-access_log" common
<Directory "/opt/lampp/phpmyadmin">
Options Indexes FollowSymLinks ExecCGI Includes
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
假设 1.2.3.4
是我的 IP,例如 example.com。为了访问 db.example.com (1.2.3.4),我将在我的本地 /etc/hosts
文件中添加条目。
我的httpd-vhsots.conf
中还有其他子域的其他条目,它们运行良好。需要注意的是,db.example.com
的 vhosts
条目是文件 httpd-vhsost.conf
这就是问题所在:
当我直接在浏览器中打开 IP 1.2.3.4
时,phpMyAdmin
打开,这实际上不应该发生。如何避免这种情况?我不知道为什么会这样。
PS:我在 /etc/hosts
中删除了 db.example.com 的本地条目
【问题讨论】:
【参考方案1】:更改vhsots
条目的顺序将解决此问题。如果您直接通过 IP 地址访问服务器,第一个将作为默认条目。
因此,将vhost
放在您想要在浏览器中点击 IP 时显示的第一个位置。
【讨论】:
【参考方案2】:你可以改变:
<VirtualHost *:80>
到:
<VirtualHost db.example.com:80>
当此处指定服务器名称而不是“*”时,此虚拟主机配置不会捕获 IP 地址或除此之外的任何其他名称。
【讨论】:
虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接答案可能会失效。 - From Review @VihariPiratla 这不是解决方案的链接。这是 Apache 配置文件的一行。 db.example.com 只是示例性的服务器名称。 对不起,我可能标记错了。但请考虑扩大您的答案。它解决了什么问题,检查的意义何在?等等以上是关于XAMPP 默认虚拟主机的主要内容,如果未能解决你的问题,请参考以下文章