Programmation.web : Ubuntu, Apache2 et, surtout, des VirtualHost qui ne marchent pas
Posté par Nicolas Delsaux (page perso, ) le 26 septembre 2006
Salut, sur mon Apache2 de chez moi, je cherche à faire pointer deux adresses dyndns vers deux parties :
nicolas-delsaux.is-a-geek.net vers mes applications PHP & co qui marchent (hébergées sous /var/www/site)
nicolas-delsaux.homelinux.net vers mes tentatives d'utilisation de Ruby et Rails (hébergées sous /var/www/ror)
J'ai donc modifié mon ports.conf comme ça :
et mon fichier default dans le dossier sites-available (enfin, le lien dans ce site vers le fichier dans sites-enabled) comme ça :
Le proxypass et proxypass reverse m'a été indiqué par le site http://schwuk.com/articles/2006/06/13/hosting-rails-applicat(...) comme un moyen d'utiliser Rails dans un contexte Apache.
Le problème, c'est que, quand je tape http://nicolas-delsaux.homelinux.net, je tombe sur les pages de http://nicolas-delsaux.is-a-geek.net alors qu'il devrait m'afficher la page d'accueil des applications Rails (auxquelles j'accède sans problème quand je fais un http://localhost:3000).
Alors, que faire ? Envoyer des pages web imprimées par la poste ? Me reconvertir dans la rédaction de textes pour quildes de voleurs ? Ne surtout pas vivre de temps intéressants ? J'y pense, mais bon, c'est moins bien ...
J'imagine qu'il s'agit d'une erreur bête, mais est-ce que vous pourriez me dire laquelle ?
Cela étant ... linuxfr traite plutôt comme un chien les éléments de mon fichier de conf
nicolas-delsaux.is-a-geek.net vers mes applications PHP & co qui marchent (hébergées sous /var/www/site)
nicolas-delsaux.homelinux.net vers mes tentatives d'utilisation de Ruby et Rails (hébergées sous /var/www/ror)
J'ai donc modifié mon ports.conf comme ça :
Listen 80
NameVirtualHost *:80
Listen 443
# Listen 8080
et mon fichier default dans le dossier sites-available (enfin, le lien dans ce site vers le fichier dans sites-enabled) comme ça :
<VirtualHost *:80>
ServerName nicolas.delsaux.is-a-geek.net
DocumentRoot /var/www/site
#
# Options FollowSymLinks
# AllowOverride None
#
<Directory /var/www/site>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# Uncomment this directive is you want to see apache2's
# default start page (in /apache2-default) when you go to /
#RedirectMatch ^/$ /apache2-default/
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/access.log combined
ServerSignature On
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</VirtualHost>
<VirtualHost *:80>
ServerName nicolas-delsaux.homelinux.net
DocumentRoot /home/nicolas
ProxyPass / http://localhost:3000/
ProxyPassReverse / http://localhost:3000/
</VirtualHost>
Le proxypass et proxypass reverse m'a été indiqué par le site http://schwuk.com/articles/2006/06/13/hosting-rails-applicat(...) comme un moyen d'utiliser Rails dans un contexte Apache.
Le problème, c'est que, quand je tape http://nicolas-delsaux.homelinux.net, je tombe sur les pages de http://nicolas-delsaux.is-a-geek.net alors qu'il devrait m'afficher la page d'accueil des applications Rails (auxquelles j'accède sans problème quand je fais un http://localhost:3000).
Alors, que faire ? Envoyer des pages web imprimées par la poste ? Me reconvertir dans la rédaction de textes pour quildes de voleurs ? Ne surtout pas vivre de temps intéressants ? J'y pense, mais bon, c'est moins bien ...
J'imagine qu'il s'agit d'une erreur bête, mais est-ce que vous pourriez me dire laquelle ?
Cela étant ... linuxfr traite plutôt comme un chien les éléments de mon fichier de conf
> Lire le message (6 commentaires, moyenne: 1).
Vous avez demandé le commentaire #759147.



ma technique (et celle officielle)...
la bonne methode serait de faire un fichier par site dans
/etc/apache2/sites-available/
dans chaque fichier tu fais les reglages pour chaque site
ex :
remplacer website.com par le nom des sites
remplacer /home ... par le chemin d'acces au fichier de ce site
enfin faire un lien entre
/etc/apache2/sites-available/site_un
et
/etc/apache2/sites-enabled/site_un
et faire un restart du serveur apache.
Apprendre par les autres, c'est bien.
Apprendre par soi-meme (RTFM, man, et notre ami google) c'est mieux