2016-07-01 122 views
0

假设我有Apache HTTP Server,一个IP地址,并且我没有任何域名。我的问题是如何在相同的IP但不同的端口上运行两个Web应用程序。
例如:在同一个IP上运行多个Web应用程序

  • APP_1运行在IP_ADDRESS:PORT_1
  • APP_2上IP_ADDRESS运行:PORT_2

这样我就可以通过在浏览器的地址栏中键入IP地址和端口号来访问两者。据我所知它被称为基于IP的虚拟主机。

+1

这是正确的,它会工作。我建议你简单地看一下虚拟主机的文档:https://httpd.apache.org/docs/current/vhosts/ip-based.html – arkascha

+1

但是,你可能也想考虑获得一个注册的域名。它每年来几欧元,并允许您在该域名下使用多个主机名(有时称为“子域名”)。所以像'app1.example.com'。这比IP地址和端口号的技术标记更易于使用,并简化了防火墙配置,因为您可以在单个端口上操作所有应用程序。 – arkascha

回答

1

在阿帕奇/ conf目录下的httpd.conf filr你必须像下面创建VirtualHosts:

Listen 80 
Listen 81 
<Directory /> 
    AllowOverride none 
    Require all granted 
</Directory> 
<Directory /var/www> 
    Options Indexes FollowSymLinks Includes ExecCGI 
    AllowOverride All 
    Require all granted 
</Directory> 
<VirtualHost IPAddress:80> 
    ServerName localhost:80 
    WSGIScriptAlias/"C:/var/www/GP/GP/wsgi.py" 
    Alias /static/ "C:/var/www/GP/static/" 
    Alias /templates/ "C:/var/www/GP/templates/" 
    <Directory "C:/var/www/GP/static"> 
     Require all granted 
    </Directory> 
    <Directory "C:/var/www/GP/GP"> 
     <Files wsgi.py> 
      Require all granted 
     </Files> 
    </Directory> 
</VirtualHost> 
<VirtualHost IPAddress:81> 
    ServerName localhost:81 
    WSGIScriptAlias//var/www/adminSVNProject/adminSVNProject/wsgi.py 
    Alias /static/ /var/www/adminSVNProject/static/ 
    Alias /templates/ /var/www/adminSVNProject/templates/ 
    <Directory /var/www/adminSVNProject/static> 
     Require all granted 
    </Directory> 
    <Directory /var/www/adminSVNProject/adminSVNProject> 
     <Files wsgi.py> 
      Require all granted 
     </Files> 
    </Directory> 
</VirtualHost> 
WSGIPythonPath /var/www/GP;/var/www/adminSVNProject; 

如果你的文件在C:VAR/WWW
希望它可以帮助你。

相关问题