为了测试目的,我在一台机器上设置了 LAMP。我想从同一台机器访问 Apache、MySQL 和 PHP。是否需要设置虚拟主机?
答案1
安装后Apache Web 服务器到你的机器,你将有一个默认文件中的站点配置/etc/apache2/sites-enabled/000-default.conf
如下:
<VirtualHost *:80>
...
ServerAdmin ...
DocumentRoot /var/www/html
...
ErrorLog ...
CustomLog ...
</VirtualHost>
通过适当地编辑此配置(例如,指令DocumentRoot
)并重新启动 Apache Web 服务器,您将拥有一个没有虚拟主机的工作 Web 服务器配置。
任何到达 TCP 端口 80 的网页请求都将从DocumentRoot
指令上指定的默认目录进行处理。这是最简单的配置。
网页请求可以发送到“主持人“(例如http://host/page
:)使用以下任何一种形式host
:
127.0.0.1
[::1]
localhost
如果你从相同的机器。
如果你想从其他机器,您可以使用
ip_addr
host_name
在哪里
ip_addr
是请求计算机已知的 Web 服务器的 IPv4 或 IPv6。(您的 Web“浏览器”计算机应该有到服务器端口 80 的 TCP 访问路径。)
host_name
可以是简单名称或完全限定名称,可解析为ip_addr
上述名称。为了能够转换host_name
为ip_addr
,您必须在/etc/hosts
Web“浏览器”计算机的文件中创建适当的条目,或在 DNS 服务器中创建最终将由“浏览器”计算机引用的条目。请注意,提到的 DNS 服务器不必是公共 DNS 服务器。
笔记:
Apache Web Server 的主配置文件通常称为 httpd.conf
,它应该位于 下的某个位置/etc
。但是,在我的配置(Ubuntu + Apache2)中,它位于/etc/apache2/apache2.conf
。虚拟主机(虚拟站点)可以在目录下定义/etc/apache2/sites-enabled/
。请注意,额外的配置文件是通过使用主配置文件中的指令“包含”的。因此,要确定您的配置中“包含”了哪些附加文件,您应该查看主配置文件:
grep -i include apache2.conf