如果全新安装
Apache 2.4
PHP
Phpmyadmin
- 在
Ubuntu 14.04
服务器上。
我使用所有可以浏览的默认“开箱即用”设置,x.x.x.x/phpmyadmin
并且 phpmyadmin 将加载 - 这并不奇怪。
然后,我编辑默认虚拟主机,当直接向服务器 IP 地址发出请求时,响应 404 错误。例如
<VirtualHost *:80>
redirect 404 /
ErrorDocument 404 "<h2>404 Not Found: Hostname not recognised</h2>This server is not configured for the requested domain"
# Note: this has to be used or else phpmyadmin wont work - visiting http://<server IP>/phpmyadmin
# simply results in the ErrorDocument menssage showing
DocumentRoot /var/www/html
</VirtualHost>
浏览服务器:x.x.x.x/phpmyadmin
现在将导致运行带有 404 错误响应的默认虚拟主机,而不是 phpmyadmin。
我尝试将IncludeOptional conf-enabled/*.conf
指令移到更低的位置,/etc/apache2/apache.conf
但没有效果。例如
# Include the virtual host configurations:¬
IncludeOptional sites-enabled/*.conf¬
# Include generic snippets of statements¬
IncludeOptional conf-enabled/*.conf¬
如何使 phpmyadmin 及其别名指令优先于 apaches 默认虚拟主机?
答案1
你根本就不需要,它们是正交的。当请求到达时,它会被映射到虚拟主机。别名和数千个其他指令可能会被触发来影响模块处理请求的方式,但它们不能互相替代。
有一个不太明显的功能,当请求特定的引导路径时,它允许您选择单独的虚拟主机。请参阅 ServerPath 指令。这可能会让您进入新的虚拟主机,但总体要求尚不明确。