Le ore passate vanno in circolo seguendo ogni guida che riesco a trovare sulla rete.Come eseguire più siti su un'istanza di apache
io voglio avere due siti in esecuzione su una singola istanza di apache, qualcosa di simile - 192.168.2.8/site1 e 192.168.2.8/site2
Vado in tondo, ma a Dal momento che ho due file conf in 'sites-available (link simbolico a siti abilitati)' che assomigliano a questo-
<VirtualHost *:2000>
ServerAdmin [email protected]
ServerName site1
ServerAlias site1
# Indexes + Directory Root.
DirectoryIndex index.html
DocumentRoot /home/user/site1/
# CGI Directory
ScriptAlias /cgi-bin/ /home/user/site1/cgi-bin/
Options +ExecCGI
# Logfiles
ErrorLog /home/user/site1/logs/error.log
CustomLog /home/user/site1/logs/access.log combined
</VirtualHost>
e
<VirtualHost *:3000>
ServerAdmin [email protected]
ServerName site2
ServerAlias site2
# Indexes + Directory Root.
DirectoryIndex index.html
DocumentRoot /home/user/site2/
# CGI Directory
ScriptAlias /cgi-bin/ /home/user/site2/cgi-bin/
Options +ExecCGI
# Logfiles
ErrorLog /home/user/site2/logs/error.log
CustomLog /home/user/site2/logs/access.log combined
</VirtualHost>
http.conf si presenta come questo-
NameVirtualHost *:2000
NameVirtualHost *:3000
Al momento sto ottenendo questo Error-
[error] VirtualHost *:80 — mixing * ports and non-* ports with a NameVirtualHostaddress is not supported, proceeding with undefined results
ports.conf assomiglia a questo - (anche se non guide hanno menzionato alcuna necessità di modificare questo)
NameVirtualHost *:80
Listen 80
<IfModule mod_ssl.c>
# If you add NameVirtualHost *:443 here, you will also have to change
# the VirtualHost statement in /etc/apache2/sites-available/default-ssl
# to <VirtualHost *:443>
# Server Name Indication for SSL named virtual hosts is currently not
# supported by MSIE on Windows XP.
Listen 443
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
</IfModule>
Qualcuno può dare alcune semplici istruzioni per farlo funzionare? Ogni guida che ho trovato dice di farlo in un modo diverso, e ognuno porta a diversi errori. Ovviamente sto facendo qualcosa di sbagliato, ma non ho trovato una chiara spiegazione di ciò che potrebbe essere.
Voglio solo un sito accessibile sulla porta 2000 e l'altro accessibile sulla porta 3000 (o qualsiasi altra cosa, ho appena scelto quelle porte per testare con).
Io corro Ubuntu server 12.04 ...
=============
EDIT
Seguita un altro 'guida' ...
ora ho impostato questo in siti-disponibili:
<VirtualHost *:80>
DocumentRoot "/home/user/site1/"
ServerName 192.168.2.10/site1
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/home/user/site2/"
ServerName 192.168.2.10/site2
</VirtualHost>
ho posto questo apache2.conf:
ServerName site1
ServerName site2
hanno aggiunto questo per ports.conf:
Listen 192.168.2.10:80
==============
EDIT
Ora funziona, ho mettere questo in un file conf in abilitato al sito:
<VirtualHost *:81>
DocumentRoot "/home/user/site1/"
ServerName site1
</VirtualHost>
<VirtualHost *:82>
DocumentRoot "/home/user/site2/"
ServerName site2
</VirtualHost>
Ho questo in ports.conf:
Listen *:80
Listen *:81
Listen *:82
Ho questo in apache2.conf:
ServerName site1
ServerName site2
non ho trovato questo in qualsiasi guide ho ottenuto che funziona attraverso un'intera giornata di tentativi ed errori in modo da non so se questa è una buona soluzione. Ma almeno sta funzionando come voglio ora.
Mi sembra necessario specificare nomi host virtuali in NameVirtualHost. –
Cheers, ho provato molte cose in questo senso, puoi essere più specifico su cosa dovrei provare a mettere lì? – Exbi
Dopo un giorno intero cercando di farlo funzionare, finalmente mi sono imbattuto nella risposta lol. Mi sento svuotato mentalmente, vado a letto. Dubito che la mia dubbia soluzione di hacking potrebbe interessare a chiunque, ma la modifico fino alla fine della mia domanda. – Exbi