Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基于IP的VirtualHost和Apache_Apache_Configuration_Vhosts - Fatal编程技术网

基于IP的VirtualHost和Apache

基于IP的VirtualHost和Apache,apache,configuration,vhosts,Apache,Configuration,Vhosts,我有一个IP地址为xxx.xxx.xx.x的Web服务器,我也有一个我想发布的网站,但我还没有我的网站的任何域 因此,在我的httpd vhosts.conf文件中,我有以下设置: <VirtualHost xxx.xxx.xx.x> ServerName xxx.xxx.xx.x DocumentRoot "C:\Sites\mysite" </VirtualHost> 服务器名xxx.xxx.xx.x DocumentRoot“C:\Sites\mysit

我有一个IP地址为xxx.xxx.xx.x的Web服务器,我也有一个我想发布的网站,但我还没有我的网站的任何域

因此,在我的
httpd vhosts.conf
文件中,我有以下设置:

<VirtualHost xxx.xxx.xx.x>
  ServerName xxx.xxx.xx.x
  DocumentRoot "C:\Sites\mysite"
</VirtualHost>

服务器名xxx.xxx.xx.x
DocumentRoot“C:\Sites\mysite”
由于我没有域名,我真的很想使用IP地址来访问我的站点,但我已经尝试过了,但它不起作用。我想您必须在
ServerName
中设置一个服务器名,正如标题所示


我有没有办法通过我的IP地址公开我的网站,如果有,我怎么做?

这不是一个编程问题

但无论如何

将VirtualHost设置为*而不是特定的IP地址。我想你也不需要服务器名

试试看

NameVirtualHost *:80

<VirtualHost *:80>
  DocumentRoot C:\Sites\mysite
  ServerName xx.xx.xx.xx
</VirtualHost>

如果此服务器上只有一个网站,则不需要虚拟主机。只要正确设置DocumentRoot,就可以开始了。还要确保Apache正在侦听所有IP地址(侦听0.0.0.0:80)

如果这不适用于您,请在命令提示符下执行以下操作:

telnet xx.xx.xx.xx 80
GET /

看看你得到了什么-你应该得到你网站的默认页面。

Thx对于你的回答,我知道这不是一个编程问题,但我认为这是一个正确的论坛来问这类问题。我尝试了您的解决方案:DocumentRoot“C:\Sites\mysite”,但如果我输入服务器的IP,我仍然无法获取我的站点,并且我已重新启动Apache并检查我的服务器是否响应ping。@Martin-serverfault.com是解决此类问题的正确论坛。Thx Andy,现在我知道以后:谢谢您的建议,但是我确实运行了多个站点,它们工作得非常好,因为它们有在
httpd vhosts.conf
文件中引用的域。但是这个不起作用,因为我没有域,只有一个IP地址。这可能是因为你不能混合使用基于名称的虚拟主机和IP虚拟主机,除非你有一个基于名称的主机共享的IP,以及另一个用于基于IP的主机的独立IP。你能不能在现有的域名上,比如test.yoursite.com,找到一个临时域名?
telnet xx.xx.xx.xx 80
GET /