我在装有 Apache 的服务器上运行 CentOS 5.6。我需要创建一个“暂存”站点,以便客户可以查看正在进行的开发。我知道这是通过 Apache 虚拟主机完成的。这个文件位于服务器上的哪里?
由于我们在测试服务器上有 1 个 IP 地址,并且我们暂时不想更改域名的 DNS,我该如何设置虚拟主机来解析http://my.ip.addy到我们的测试服务器的 /var/www/html/public 目录?
非常感谢您的指导。
答案1
听起来你正在尝试将域名解析为 IP,并让该 IP 上的计算机做出适当的响应。为此,你需要修改 httpd.conf 文件,该文件/etc/httpd/conf/
默认位于。然后在底部添加以下内容:
<VirtualHost *:80> # note the asterisk.
ServerName staging.example.com
DocumentRoot /var/www/html/public
ErrorLog logs/staging.example.com-error_log
</VirtualHost>
您可以ServerName
随意输入域名。将 更改为*:80
意味着,如果请求发往该 IP,则your.ip.add.ress:80
计算机将仅通过提供的 进行响应(您可能也希望如此,但我一般会避免这样做)。ServerName
然后,在客户端,我将修改hosts
文件将该域指向测试服务器的 IP。这将允许您导航到该域并到达测试站点。它可能如下所示:
127.0.0.1 localhost loopback
::1 localhost
your.ip.add.ress staging.example.com
答案2
配置文件是/etc/httpd/conf/httpd.conf你可以使用最小虚拟主机如下,
<VirtualHost X.X.X.X:80>
ServerName staging.example.com
DocumentRoot /var/www/html/public
ErrorLog logs/staging.example.com-error_log
</VirtualHost>
更多信息:http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-apache-config.html