dongxia9620 2016-03-27 20:17
浏览 31
已采纳

虚拟主机子域,IP地址作为服务器名称?

So I have a virtual host setup that is working but it is an internal server so we have no domain name for it. So under my server name I just have the IP Address and it works fine, however now I need to setup a subdomain and apache doesn't seem to be cooperating. Below essentially what I am trying to do but with the IP address removed. Any idea how this can be done?

<VirtualHost *:80>
  ServerName 111.111.111.111
  DocumentRoot "/var/www/laravel/public"
  <Directory "/var/www/laravel/public">
    AllowOverride all
  </Directory>
</VirtualHost>

<VirtualHost *:80>
  ServerName payment.111.111.111.11
  DocumentRoot "/var/www/html"
  <Directory "/var/www/html">
    AllowOverride all
  </Directory>
</VirtualHost>
  • 写回答

1条回答 默认 最新

  • douzhuo2002 2016-03-27 20:44
    关注

    A good way to achieve this is by using a different port:

    <VirtualHost *:80>
      ServerName 111.111.111.111
      DocumentRoot "/var/www/laravel/public"
      <Directory "/var/www/laravel/public/">
        AllowOverride all
      </Directory>
    </VirtualHost>
    
    Listen 8000
    
    <VirtualHost *:8000>
      ServerName 111.111.111.111
      DocumentRoot "/var/www/html"
      <Directory "/var/www/html/">
        AllowOverride all
      </Directory>
    </VirtualHost>
    

    I set the port 8000 as an example, in order to avoid side effects by using "reserved ports" you might check this list, so you can choose any unassigned one.

    Don't forget to add the

    Listen 8000

    directive so the webserver attends for connections on that specific port, and also, it is convenient to add the trailing backslash within the tag:

    <Directory "/var/www/html/">
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?