2016-07-01 5 views
0

Nehmen wir an, ich habe Apache HTTP Server, eine IP-Adresse und ich keine Domain-Namen. Meine Frage ist, wie man zwei Web-Anwendungen auf der gleichen IP-Adresse, aber verschiedenen Ports laufen lässt.
Zum Beispiel:Führen Sie mehrere Web-Anwendungen auf der gleichen IP-Adresse

  • App_1 läuft auf ip_adresse: PORT_1
  • App_2 auf ip_adresse läuft: port_2

So kann ich beide durch die Eingabe einer IP-Zugriff Adresse und Portnummer in der Adresszeile des Browsers. Wie ich es verstehe, nennt man das IP-basierte virtuelle Hosts.

+1

Das ist richtig und es wird funktionieren. Ich schlage vor, Sie werfen einfach einen Blick auf die Dokumentation für virtuelle Hosts: https://httpd.apache.org/docs/current/vhosts/ip-based.html – arkascha

+1

Sie könnten aber auch eine registrierte Domain in Betracht ziehen. Es kommt für ein paar Euro pro Jahr und ermöglicht es Ihnen, mehrere Hostnamen unter diesem Domain-Namen zu verwenden (manchmal auch als "Subdomains" bezeichnet). So etwas wie 'app1.example.com'. Das ist einfacher zu benutzen als die technische Schreibweise von IP-Adressen und Portnummern und vereinfacht die Firewall-Konfiguration, da Sie alle Apps an einem einzigen Port betreiben können. – arkascha

Antwort

1

In der httpd.conf FILR in Apache/conf Sie Virtual wie unten erstellen müssen:

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; 

Wenn Ihre Dateien in C: var/www
Hoffe, dass es Ihnen hilft.