我在 ubuntu 操作系统上使用 apache 网络服务器。我想将网络服务器主机名更改为 xyz.compnayname.com.uk。
运行 Web 服务器的虚拟机是独立机器,不属于域的一部分,因为我的主机是 Windows 7。我想知道是否可以通过编辑 etc/hosts 来
ipaddress xyz.companyname.com.uk
是否允许用户通过 DNS 访问我的 Web 服务器?喜欢http://xyz.companyname.com.uk/whateverfile。
或者我也需要对 apache 配置文件做一些更改。
谢谢
答案1
我确信您还需要做一件事,即在 apache 虚拟主机配置文件中创建一个条目。一旦您了解了操作方法,就会发现这很容易做到。
通常,您会编辑文件/etc/apache2/sites-available/000-default
,它是“sites-available”中默认文件的链接。
在此文件中,您可以添加任意数量的虚拟主机,这些虚拟主机定义站点及其目录。因此,您可以在文件末尾添加一个条目,如下所示:
<VirtualHost *:80>
<Directory /var/www/whateverdirectory>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
DocumentRoot /var/www/whateverdirectory/
ServerName xyz.companyname.com.uk
</VirtualHost>
在我的配置文件中,我将初始“VirtualHost”定义设置为 root /var/www
,因此我可以访问配置文件中未定义的内容,例如 phpmyadmin(可以定义,但现在还没有定义)等。我有一个静态索引页,上面写着比“它有效!”更有用的东西。
答案2
@MartyFried 给出的答案 100% 正确。您也可以通过 IP 激活。
不要忘记端口转发,否则 WWW 看不到它。您可以同时使用它们。
Listen 172.20.30.40:80
Listen 172.20.30.40:8080
Listen 172.20.30.50:80
Listen 172.20.30.50:8080
<VirtualHost 172.20.30.40:80>
DocumentRoot /www/example1-80
ServerName www.example.com
</VirtualHost>
<VirtualHost 172.20.30.40:8080>
DocumentRoot /www/example1-8080
ServerName www.example.com
</VirtualHost>
<VirtualHost 172.20.30.50:80>
DocumentRoot /www/example2-80
ServerName www.example.org
</VirtualHost>
<VirtualHost 172.20.30.50:8080>
DocumentRoot /www/example2-8080
ServerName www.example.org
</VirtualHost>