Formation par Olivier Duffez

Formation au référencement par Olivier Duffez, créateur de WebRankInfo !
Une formule efficace alliant théorie et pratique, avec une haute disponibilité des intervenants
Cette formule a déjà convaincu plusieurs centaines d'entreprises, pourquoi pas vous ?
Réservez vite votre place en ligne (convention possible pour imputer sur le budget formation)

Formation référencement Marseille

mod_rewrite et log d'utilisateur

Poster un nouveau sujet Imprimer cette discussion    Forum -> URL Rewriting et .htaccess   Les dernières discussions de ce forum sont disponibles au format RSS
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 
localhost
Nouveau WRInaute

Inscrit le: 23 Mar 2004
Messages: 5

URL permanente de ce messagePosté le : Mar Mar 23, 2004 20:56    Sujet du message: mod_rewrite et log d'utilisateur

Salut !
J'utilise mod_rewrite d'apache (sous unix) pour gerer les vhosts de mes utilisateurs (users1.domain.com user2.domain.com ...) je les gere avec un fichier dummy.vhost dans lequel je met :
Code:
user1.domain.com      /home/user1
user2.domain.com      /home/user2

ca marche impecable jusqu'au moment j'ai eu des demandes pour offrir des statistiques pour quelques utilisateurs ,j'utilise webalizer mais c'est pas ca le probleme ,j'ai revisé la doc de mod_rewrite ,on ne peut pas offrir un fichier log par vhost pour que les analyseurs de logs (les scripts de stats) analysent ce fichier et donnent des stats spécifiques à un seul utilisateur ,je sais qu'en utilisant la directive VirtualHost ca m'offrira un fichier log par utilisateur ,mais avec cette methode j'aurais a editer le httpd.conf et redemarrer apache à chaque fois qu'un utilisateur s'inscrit ,et avec plusque 300 utilisateurs inscrits mon httpd.conf aura une taille gigantesque qui bouffera toute la ram...
voila si vous avez une solution pour moi ,je vous remercie.
 
localhost
localhost
Nouveau WRInaute

Inscrit le: 23 Mar 2004
Messages: 5

URL permanente de ce messagePosté le : Mar Mar 23, 2004 23:39    Sujet du message: mod_rewrite et log d'utilisateur

voila pour plus d'explication :

Voila les lignes inserées dans mon httpd.conf (Apache2 unix)
Citation:
RewriteEngine on
RewriteMap lowercase int:tolower
RewriteMap vhost txt:/usr/local/httpd/conf/dummy.vhost
RewriteLog /usr/local/httpd/logs/rewrite.log
RewriteLogLevel 1
RewriteCond %{REQUEST_URI} !^/icons/
RewriteCond %{REQUEST_URI} !^/cgi-bin/
RewriteCond %{REQUEST_URI} !^/error/
RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$
RewriteCond ${vhost:%1} ^(/.*)$
RewriteRule ^/(.*)$ %1/$1
RewriteCond %{REQUEST_URI} ^/cgi-bin/

#RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$
#RewriteCond ${vhost:%1} ^(/.*)$
#RewriteRule ^/(.*)$ %1/$1


voila mon fichier map des vhosts
Citation:
# cat /usr/local/httpd/conf/dummy.vhost
nas.hexahost.com /home/nas/www
nuk.hexahost.com /home/nuk/www


et voila le fichier log de sortie ,il n'est pas traitable par webalizer ou autre ,ces lignes sont le resultat d'une seule requete sur le serveur qui normalement donne une seule ligne sur le log ,mais voila ce que ca donne :
Citation:
# cat /usr/local/httpd/logs/rewrite.log
127.0.0.1 - - [23/Mar/2004:22:08:39 +0100] [nas.hexahost.com/sid#809b5f0][rid#815daa8/initial] (1) go-ahead with /home/nas/www/ [OK]
127.0.0.1 - - [23/Mar/2004:22:08:39 +0100] [nas.hexahost.com/sid#809b5f0][rid#8166ac0/subreq] (1) go-ahead with /home/nas/www/index.php [OK]
127.0.0.1 - - [23/Mar/2004:22:08:39 +0100] [nas.hexahost.com/sid#809b5f0][rid#8168ac8/subreq] (1) go-ahead with /home/nas/www/index.htm [OK]
127.0.0.1 - - [23/Mar/2004:22:08:39 +0100] [nas.hexahost.com/sid#809b5f0][rid#8166ac0/subreq] (1) go-ahead with /home/nas/www/index.html [OK]
127.0.0.1 - - [23/Mar/2004:22:08:39 +0100] [nas.hexahost.com/sid#809b5f0][rid#8168ac8/subreq] (1) go-ahead with /home/nas/www/index.html.var [OK]
127.0.0.1 - - [23/Mar/2004:22:08:39 +0100] [nas.hexahost.com/sid#809b5f0][rid#8166ac0/subreq] (1) go-ahead with /home/nas/www/HEADER.html [OK]
127.0.0.1 - - [23/Mar/2004:22:08:39 +0100] [nas.hexahost.com/sid#809b5f0][rid#816db10/subreq] (1) pass through /cgi-bin/index.php
127.0.0.1 - - [23/Mar/2004:22:08:39 +0100] [nas.hexahost.com/sid#809b5f0][rid#816db10/subreq] (1) pass through /cgi-bin/index.htm
127.0.0.1 - - [23/Mar/2004:22:08:39 +0100] [nas.hexahost.com/sid#809b5f0][rid#816db10/subreq] (1) pass through /cgi-bin/index.html
127.0.0.1 - - [23/Mar/2004:22:08:39 +0100] [nas.hexahost.com/sid#809b5f0][rid#816db10/subreq] (1) pass through /cgi-bin/index.html.var
127.0.0.1 - - [23/Mar/2004:22:08:39 +0100] [nas.hexahost.com/sid#809b5f0][rid#816db10/subreq] (1) go-ahead with /home/nas/www/README.html [OK]
127.0.0.1 - - [23/Mar/2004:22:08:39 +0100] [nas.hexahost.com/sid#809b5f0][rid#815daa8/initial] (1) pass through /icons/blank.gif
127.0.0.1 - - [23/Mar/2004:22:08:39 +0100] [nas.hexahost.com/sid#809b5f0][rid#815daa8/initial] (1) pass through /icons/folder.gif
127.0.0.1 - - [23/Mar/2004:22:08:39 +0100] [nas.hexahost.com/sid#809b5f0][rid#815daa8/initial] (1) pass through /icons/unknown.gif


merci pour votre aide
 
localhost
ysimon
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 24 Fév 2004
Messages: 140

URL permanente de ce messagePosté le : Mer Mar 24, 2004 2:37    Sujet du message: Re: mod_rewrite et log d'utilisateur

et ben moi, je ferai un grep toutes les nuits sur le access.log, enfin, si l'info est bien dans le fichier access.log
genre

cat /var/log/apache/access.log | grep user1.domain.com > access_user1.log
 
ysimon Visiter le site web du posteur
localhost
Nouveau WRInaute

Inscrit le: 23 Mar 2004
Messages: 5

URL permanente de ce messagePosté le : Mer Mar 24, 2004 4:36    Sujet du message: mod_rewrite et log d'utilisateur

salut !
merci pour votre rapide reponse Smile
voila une ligne de mon access_log :
Citation:
127.0.0.1 - - [23/Mar/2004:22:08:39 +0100] "GET /icons/unknown.gif HTTP/1.1" 304 -


il n'y a pas de vhost dedans ,comment faire dans mon cas ?
voila ce que je met dans mon httpd.conf pour les logs :
Citation:
ErrorLog logs/error_log

LogLevel warn

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent

# You need to enable mod_logio.c to use %I and %O
#LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio

CustomLog logs/access_log common
 
localhost
localhost
Nouveau WRInaute

Inscrit le: 23 Mar 2004
Messages: 5

URL permanente de ce messagePosté le : Jeu Mar 25, 2004 9:29    Sujet du message: mod_rewrite et log d'utilisateur

salut !
ysimon cette solution va ralentir mon serveur si mon access_log est grand en taille et que j'ai plusieurs utilisateurs à extraire de ce log...
 
localhost
Pulsar-san
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 29 Oct 2003
Messages: 190

URL permanente de ce messagePosté le : Dim Mai 09, 2004 12:58    Sujet du message: mod_rewrite et log d'utilisateur

Je crois qu'on peut ajouter "%v" en premier paramètre dans le LogFormat, ça y met le nom du virtual host, par exemple:
LogFormat "%v %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
Ensuite tu peux utiliser la directive de ysimon, ou bien utiliser split-logfile qui est prévu pour découper tes logs en 1 fichier par virtual host.
 
Pulsar-san Visiter le site web du posteur
 
Montrer les messages depuis:   
Revenir en haut    Forum -> URL Rewriting et .htaccess Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 1 - 
Connexion
Nom d'utilisateur:    Mot de passe:      Se connecter automatiquement à chaque visite    

En savoir plus : .

CLIQUEZ ICI pour vous inscrire à WebRankInfo (forum, annuaire, outils...)

Connexion

© 2001-2005 phpBB Group, support français
Personnalisation : WebRankInfo ™


 ODP  Firefox  Alsacreations  annuaire webmaster Yagoort