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

时间:2016-03-27 20:17:42

标签: php apache .htaccess subdomain

所以我有一个正在运行的虚拟主机设置,但它是一个内部服务器,因此我们没有域名。所以在我的服务器名称下我只有IP地址,它工作正常,但是现在我需要设置一个子域,而apache似乎没有合作。基本上是我想要做的,但删除了IP地址。知道如何做到这一点?

<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 个答案:

答案 0 :(得分:3)

实现这一目标的一个好方法是使用不同的端口:

<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>

我设置端口 8000 作为示例,为了避免副作用使用“保留端口”,您可以检查this list,这样就可以了选择任何未分配的。

不要忘记添加

收听8000

指令,以便web服务器注册该特定端口上的连接,并且在标记中添加尾部反斜杠也很方便:

<Directory "/var/www/html/">