Pages : 1
#1 Le 19/06/2006, à 22:38
- abelthorne
[Résolu] Permissions avec XAMPP
Bonsoir,
Débutant en PHP (et n'ayant pas besoin de notions poussées pour les sites que je mets en place), j'utilisais EasyPHP sous Windows pour faire mes tests. Il me convenait parfaitement du fait de sa simplicité ne nécessitant pas de configuration puisque tout était déjà tout fait.
En cherchant un équivalent pour Linux, je suis tombé sur XAMPP. Je l'ai installé sans soucis, je l'ai sécurisé et après... je suis un peu perdu.
J'ai noté que le "dossier de production" (où pointe la racine du serveur) est htdocs. Voulant garder une hiérarchie de dossiers assez propre, je voudrais avoir comme base d'opérations un dossier "Web" se trouvant dans mon dossier personnel (/home/monlogin/Web). Si je fais un lien symbolique "www" dans le dossier "htdocs" qui pointe vers le dossier "Web" en question, je me heurte à des problèmes de droits ("you don't have permission to access xxx on that server") lorsque je me balade dans "localhost/www" et ses sous-répertoires / fichiers éventuels, malgré les permissions accordées à tout le monde sur les dossiers et fichiers en question.
Est-ce qu'il faut que le propriétaire des dossiers et fichiers présents sur le serveur appartiennent à root (comme l'ensemble des fichiers de XAMPP) ? Est-ce que je gère mal les permissions ?
Dernière modification par abelthorne (Le 20/06/2006, à 15:44)
Hors ligne
#2 Le 20/06/2006, à 00:34
- M. DECLERCQ
Re : [Résolu] Permissions avec XAMPP
Bonsoir ;
Pour commencer, tu vas oublier le symlink qui n'est pas vraiment la meilleurs solution !
Voici comment tu dois procéder pour arriver au résultat attendu :
I. Modification du fichier httpd.conf
Rappel : Dans xampp, le fichier de configuration principal du serveur apache se trouve dans le répertoire /opt/lampp/etc/
Dans un premier temps, tu vas devoir modifier le fichier httpd.conf afin de décommenter une ligne (directive d'inclusion) qui est la suivante : Include etc/extra/httpd-vhosts.conf
Pour ce faire, il te suffit de taper le code suivant dans un terminal :
sudo gedit /opt/lampp/etc/httpd.conf
Une fois que le fichier est ouvert, il ne te reste plus qu'à chercher la ligne mentionnée ci-dessus et la décommenter en enlevant le signe # qui se trouve devant.
Enfin, tu sauvegarde ton fichier modifié.
II. Création d'un VirtualHost :
Ici, tu vas créer un Virtualhost (site virtuel) qui te permettra d'avoir ton répertoire web dans ton répertoire utilisateur comme tu le désir.
La "déclaration" du VirtualHost s'effectue dans le fichier suivant : httpd-vhosts.conf
Rappel : Ce fichier se trouve dans le répertoire /opt/lampp/etc/extra/
Pour l'éditer, il te suffit de taper le code suivant dans un terminal :
sudo gedit /opt/lampp/etc/extra/httpd-vhosts.conf
Dans un premier temps, supprime ce qui suit dans le fichier que tu viens d'éditer :
NameVirtualHost *:80
#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any <VirtualHost> block.
#
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot /www/docs/dummy-host.example.com
ServerName dummy-host.example.com
ServerAlias www.dummy-host.example.com
ErrorLog logs/dummy-host.example.com-error_log
CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost><VirtualHost *:80>
ServerAdmin webmaster@dummy-host2.example.com
DocumentRoot /www/docs/dummy-host2.example.com
ServerName dummy-host2.example.com
ErrorLog logs/dummy-host2.example.com-error_log
CustomLog logs/dummy-host2.example.com-access_log common
</VirtualHost>
Et enfin, rajoute ce qui suit :
NameVirtualHost *:80
# VirtualHost de abelthorne
<VirtualHost *:80>
ServerAdmin abelthorne@ton_fai.tld
DocumentRoot /home/tonlogin/web<Directory />
Options FollowSymlinks
AllowOverride None
</Directory><Directory /home/tonlogin/web>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>ServerName domaine.tld
ServerAlias www.domaine.tld
ErrorLog /home/tonlogin/web/logs/domaine.tld-error_log
CustomLog /home/tonlogin/web/logs/domaine.tld-access_log common
ServerSignature Off</VirtualHost>
IMPORTANT : Dans les directives ci-dessus, tu dois bien entendu effectuer quelques modifications, notamment :
Remplacer domaine.tld par le nom de ton domaine ( exemple : google.fr );
remplacer tonlogin par ton nom d'utilisateur ubuntu ;
abelthorne@fai.tld par ton adresse e-mail.
Par ailleurs, tu dois créer les répertoires suivants :
/home/tonlogin/web
et
/home/tonlogin/web/logs
ou tonlogin est à remplacer par ton nom d'utilisateur ubuntu.
III. Permissions des fichiers :
Afin de ne pas rencontrer l'erreur évoquée dans ton post, voici ce que tu dois taper dans un terminal :
sudo chown tonlogin:tonlogin -R /home/tonlogin/web
Ps : Remplace tonlogin par ton nom d'utilisateur ubuntu.
sudo chmod 777 -R /home/tonlogin/web
Ps : Remplace tonlogin par ton nom d'utilisateur ubuntu.
Ps : la valeur 777 c'est risqué pour un environnement de production. Renseigne toi sur chmod (via ton amis google).
Aussi, a chaque fois que tu crééra un nouveau dossier ou pages HTML, PHP dans ton répertoire web, assure toi que celle-cis disposent des bonne permissions.
Enfin, pour que ta nouvelle configuration soit prise en compte, tu dois relancer apache. Pour cela, il te suffit de taper le code suivant dans un terminal, ce qui stopera et relancera xampp :
sudo /opt/lampp/lampp restart
PS : Quelques explications concernant les directives employées :
ServerName : Nom d'hôte du serveur Apache ;
ServerAdmin : Permet d'indiquer l'adresse e-mail de l'administrateur du serveur ;
DocumentRoot : Indique le répertoire qui contiendra les pages web ;
VirtualHost : défini des sites virtuels ;
Directory : Permet de définir une configuration spécifique à un répertoire.
Ps : Si tu n'as pas de nom de domaine, remplace domaine.tld par ce que tu veux et rajoute la ligne suivante dans ton fichier hosts :
127.0.0.1 ce_que_tu_as_choisi
Rappel : Le fichiers hosts se trouve dans le répertoire /etc/
De cette manière, dans ton navigateur (firefox...), tu pourras taper ce_que_tu_as_choisi au lieu de 127.0.0.1 ou localhost pour accéder à ton répertoire web.
Ps : Si tu as encore besoin d'aide, n'hésite pas !
PS : Si ton problème est réglé, n'oubli pas de rajouter [RESOLU] dans le titre de cette discussion.
__________________________________________________
Bien cordialement ;
Monsieur Laurent DECLERCQ.
Edit du 20/06/2006 à 15:54 (correction de quelques erreurs)
Dernière modification par M. DECLERCQ (Le 21/06/2006, à 20:14)
Cordialement ;
Hors ligne
#3 Le 20/06/2006, à 09:10
- abelthorne
Re : [Résolu] Permissions avec XAMPP
Merci pour les infos détaillées, je vais tester ça dès que possible.
Hors ligne
#4 Le 20/06/2006, à 11:28
- abelthorne
Re : [Résolu] Permissions avec XAMPP
Alors, j'ai fait les modifs indiquées et depuis, j'ai un message d'erreur au lancement de XAMPP :
Starting XAMPP for Linux 1.5.3a...
XAMPP: Starting Apache with SSL (and PHP5)...
XAMPP: Error 1! Couldn't start Apache!
XAMPP: Starting diagnose...
XAMPP: Sorry, I've no idea what's going wrong.
XAMPP: Please contact our forum http://www.apachefriends.org/f/
XAMPP: Starting MySQL...
XAMPP: Starting ProFTPD...
XAMPP for Linux started.
Je précise que j'ai redémarré mon PC entre temps.
Dernière modification par abelthorne (Le 20/06/2006, à 11:29)
Hors ligne
#5 Le 20/06/2006, à 13:43
- M. DECLERCQ
Re : [Résolu] Permissions avec XAMPP
Re-bonjour ;
Cela vient probablement d'une erreur de configuration dans tes fichiers apaches.
Fait moi voir ces deux fichiers :
- httpd.conf,
- httpd-vhosts.conf.
[Edit après vérification de mon premier message] :
Je crois que j'ai fait une erreur dans mon message précédent.
Tu dois remplacer Multiviews par MultiViews.
et relancer xampp comme expliqué dans mon message précédent.
En effet, je crois que l'indien est sensible à la case !
Sinon, fais quand même voir les fichiers.
Dans cette attente ;
_____________________________________
Bien cordialement ;
Monsieur Laurent DECLERCQ
Dernière modification par M. DECLERCQ (Le 20/06/2006, à 14:00)
Cordialement ;
Hors ligne
#6 Le 20/06/2006, à 14:10
- M. DECLERCQ
Re : [Résolu] Permissions avec XAMPP
Re-bonjour ;
Cela vient probablement d'une erreur de configuration dans tes fichiers apaches.
Fait moi voir ces deux fichiers :
- httpd.conf,
- httpd-vhosts.conf.[Edit après vérification de mon premier message] :
Je crois que j'ai fait une erreur dans mon message précédent.
Tu dois remplacer Multiviews par MultiViews.
et relancer xampp comme expliqué dans mon message précédent.
En effet, je crois que l'indien est sensible à la case !
Sinon, fais quand même voir les fichiers.
Dans cette attente ;
_____________________________________
Bien cordialement ;Monsieur Laurent DECLERCQ
Ps : Pour être sûr, je vais installer xampp pour t'aider à résoudre tes problèmes s'il y a lieu.
Dernière modification par M. DECLERCQ (Le 20/06/2006, à 15:56)
Cordialement ;
Hors ligne
#7 Le 20/06/2006, à 14:21
- abelthorne
Re : [Résolu] Permissions avec XAMPP
Cela vient probablement d'une erreur de configuration dans tes fichiers apaches.
Fait moi voir ces deux fichiers :
- httpd.conf,
- httpd-vhosts.conf.[Edit après vérification de mon premier message] :
Je crois que j'ai fait une erreur dans mon message précédent.
Tu dois remplacer Multiviews par MultiViews.
et relancer xampp comme expliqué dans mon message précédent.
En effet, je crois que l'indien est sensible à la case !
En remplaçant par "MultiViews", pas de changement.
Voilà le fichier httpd.conf. J'ai viré les commentaires pour l'affichage sur le forum.
ServerRoot "/opt/lampp"
Listen 80LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authn_dbm_module modules/mod_authn_dbm.so
LoadModule authn_anon_module modules/mod_authn_anon.so
#LoadModule authn_dbd_module modules/mod_authn_dbd.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_owner_module modules/mod_authz_owner.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule file_cache_module modules/mod_file_cache.so
LoadModule cache_module modules/mod_cache.so
LoadModule disk_cache_module modules/mod_disk_cache.so
LoadModule mem_cache_module modules/mod_mem_cache.so
#LoadModule dbd_module modules/mod_dbd.so
LoadModule bucketeer_module modules/mod_bucketeer.so
LoadModule dumpio_module modules/mod_dumpio.so
LoadModule echo_module modules/mod_echo.so
LoadModule case_filter_module modules/mod_case_filter.so
LoadModule case_filter_in_module modules/mod_case_filter_in.so
LoadModule ext_filter_module modules/mod_ext_filter.so
LoadModule include_module modules/mod_include.so
LoadModule filter_module modules/mod_filter.so
LoadModule charset_lite_module modules/mod_charset_lite.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule ldap_module modules/mod_ldap.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule logio_module modules/mod_logio.so
LoadModule env_module modules/mod_env.so
LoadModule mime_magic_module modules/mod_mime_magic.so
LoadModule cern_meta_module modules/mod_cern_meta.so
LoadModule expires_module modules/mod_expires.so
LoadModule headers_module modules/mod_headers.so
LoadModule ident_module modules/mod_ident.so
LoadModule usertrack_module modules/mod_usertrack.so
LoadModule unique_id_module modules/mod_unique_id.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule mime_module modules/mod_mime.so
LoadModule dav_module modules/mod_dav.so
LoadModule status_module modules/mod_status.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule asis_module modules/mod_asis.so
LoadModule info_module modules/mod_info.so
LoadModule suexec_module modules/mod_suexec.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule cgid_module modules/mod_cgid.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule vhost_alias_module modules/mod_vhost_alias.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule dir_module modules/mod_dir.so
LoadModule imagemap_module modules/mod_imagemap.so
LoadModule actions_module modules/mod_actions.so
LoadModule speling_module modules/mod_speling.so
LoadModule userdir_module modules/mod_userdir.so
LoadModule alias_module modules/mod_alias.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule apreq_module modules/mod_apreq2.so
LoadModule ssl_module modules/mod_ssl.so<IfDefine JUSTTOMAKEAPXSHAPPY>
LoadModule php4_module modules/libphp4.so
LoadModule php5_module modules/libphp5.so
</IfDefine><IfModule !mpm_winnt_module>
<IfModule !mpm_netware_module>User nobody
Group nogroup
</IfModule>
</IfModule>ServerAdmin you@example.com
ServerName localhost
DocumentRoot "/opt/lampp/htdocs"
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory><Directory "/opt/lampp/htdocs">
Options Indexes FollowSymLinks ExecCGI IncludesAllowOverride All
Order allow,deny
Allow from all
</Directory><IfModule dir_module>
DirectoryIndex index.html index.html.var index.php index.php3 index.php4
</IfModule><FilesMatch "^\.ht">
Order allow,deny
Deny from all
</FilesMatch>ErrorLog logs/error_log
LogLevel warn
<IfModule log_config_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common<IfModule logio_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
</IfModule>CustomLog logs/access_log common
</IfModule><IfModule alias_module>
ScriptAlias /cgi-bin/ "/opt/lampp/cgi-bin/"
</IfModule><IfModule cgid_module>
</IfModule><Directory "/opt/lampp/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>DefaultType text/plain
<IfModule mime_module>
TypesConfig etc/mime.typesAddType application/x-compress .Z
AddType application/x-gzip .gz .tgzAddHandler cgi-script .cgi .pl
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
</IfModule>EnableMMAP off
EnableSendfile offInclude etc/extra/httpd-autoindex.conf
Include etc/extra/httpd-vhosts.conf
Include etc/extra/httpd-default.conf
<IfModule ssl_module>
<IfDefine SSL>
Include etc/extra/httpd-ssl.conf
</IfDefine>
</IfModule>
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>Include etc/extra/httpd-xampp.conf
Voilà httpd-vhosts.conf. Je précise les choses suivantes :
- Mon nom d'utilisteur sous Ubuntu est "terzag".
- Le dossier dans lequel je veux stocker mes sites de test (abrégé en /home/login/web avant) est "/home/terzag/Boulot/Web/www".
- L'adresse xxx@xxx.fr est remplacée par ma véritable adresse e-mail (je préfère ne pas la laisser apparaître en clair sur le forum).
- Je n'ai pas de nom de domaine attaché à mon PC ; le nom terzagtest.com est un nom bidon que j'ai rajouté dans /etc/hosts comme indiqué avant.
#
# Use name-based virtual hosting.
#
NameVirtualHost *:80# VirtualHost de terzag
<VirtualHost *:80>
ServerAdmin xxx@xxx.fr
DocumentRoot /home/terzag/Boulot/Web/www/
<Directory />
Options FollowSymlinks
AllowOverride None
</Directory>
<Directory /home/terzag/Boulot/Web/www/>
Options Indexes FollowSymlink MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
ServerName terzagtest.com
ServerAlias www.terzagtest.com
ErrorLog /home/terzag/Boulot/Web/www/logs/terzagtest.com-error_log
CustomLog /home/terzag/Boulot/Web/www/logs/terzagtest.com-access_log common
ServerSignature Off
</VirtualHost>
Dernière modification par abelthorne (Le 20/06/2006, à 14:22)
Hors ligne
#8 Le 20/06/2006, à 14:28
- M. DECLERCQ
Re : [Résolu] Permissions avec XAMPP
M. DECLERCQ a écrit :Cela vient probablement d'une erreur de configuration dans tes fichiers apaches.
Fait moi voir ces deux fichiers :
- httpd.conf,
- httpd-vhosts.conf.[Edit après vérification de mon premier message] :
Je crois que j'ai fait une erreur dans mon message précédent.
Tu dois remplacer Multiviews par MultiViews.
et relancer xampp comme expliqué dans mon message précédent.
En effet, je crois que l'indien est sensible à la case !
En remplaçant par "MultiViews", pas de changement.
Voilà le fichier httpd.conf. J'ai viré les commentaires pour l'affichage sur le forum.
ServerRoot "/opt/lampp"
Listen 80LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authn_dbm_module modules/mod_authn_dbm.so
LoadModule authn_anon_module modules/mod_authn_anon.so
#LoadModule authn_dbd_module modules/mod_authn_dbd.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_owner_module modules/mod_authz_owner.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule file_cache_module modules/mod_file_cache.so
LoadModule cache_module modules/mod_cache.so
LoadModule disk_cache_module modules/mod_disk_cache.so
LoadModule mem_cache_module modules/mod_mem_cache.so
#LoadModule dbd_module modules/mod_dbd.so
LoadModule bucketeer_module modules/mod_bucketeer.so
LoadModule dumpio_module modules/mod_dumpio.so
LoadModule echo_module modules/mod_echo.so
LoadModule case_filter_module modules/mod_case_filter.so
LoadModule case_filter_in_module modules/mod_case_filter_in.so
LoadModule ext_filter_module modules/mod_ext_filter.so
LoadModule include_module modules/mod_include.so
LoadModule filter_module modules/mod_filter.so
LoadModule charset_lite_module modules/mod_charset_lite.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule ldap_module modules/mod_ldap.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule logio_module modules/mod_logio.so
LoadModule env_module modules/mod_env.so
LoadModule mime_magic_module modules/mod_mime_magic.so
LoadModule cern_meta_module modules/mod_cern_meta.so
LoadModule expires_module modules/mod_expires.so
LoadModule headers_module modules/mod_headers.so
LoadModule ident_module modules/mod_ident.so
LoadModule usertrack_module modules/mod_usertrack.so
LoadModule unique_id_module modules/mod_unique_id.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule mime_module modules/mod_mime.so
LoadModule dav_module modules/mod_dav.so
LoadModule status_module modules/mod_status.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule asis_module modules/mod_asis.so
LoadModule info_module modules/mod_info.so
LoadModule suexec_module modules/mod_suexec.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule cgid_module modules/mod_cgid.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule vhost_alias_module modules/mod_vhost_alias.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule dir_module modules/mod_dir.so
LoadModule imagemap_module modules/mod_imagemap.so
LoadModule actions_module modules/mod_actions.so
LoadModule speling_module modules/mod_speling.so
LoadModule userdir_module modules/mod_userdir.so
LoadModule alias_module modules/mod_alias.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule apreq_module modules/mod_apreq2.so
LoadModule ssl_module modules/mod_ssl.so<IfDefine JUSTTOMAKEAPXSHAPPY>
LoadModule php4_module modules/libphp4.so
LoadModule php5_module modules/libphp5.so
</IfDefine><IfModule !mpm_winnt_module>
<IfModule !mpm_netware_module>User nobody
Group nogroup
</IfModule>
</IfModule>ServerAdmin you@example.com
ServerName localhost
DocumentRoot "/opt/lampp/htdocs"
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory><Directory "/opt/lampp/htdocs">
Options Indexes FollowSymLinks ExecCGI IncludesAllowOverride All
Order allow,deny
Allow from all
</Directory><IfModule dir_module>
DirectoryIndex index.html index.html.var index.php index.php3 index.php4
</IfModule><FilesMatch "^\.ht">
Order allow,deny
Deny from all
</FilesMatch>ErrorLog logs/error_log
LogLevel warn
<IfModule log_config_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common<IfModule logio_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
</IfModule>CustomLog logs/access_log common
</IfModule><IfModule alias_module>
ScriptAlias /cgi-bin/ "/opt/lampp/cgi-bin/"
</IfModule><IfModule cgid_module>
</IfModule><Directory "/opt/lampp/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>DefaultType text/plain
<IfModule mime_module>
TypesConfig etc/mime.typesAddType application/x-compress .Z
AddType application/x-gzip .gz .tgzAddHandler cgi-script .cgi .pl
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
</IfModule>EnableMMAP off
EnableSendfile offInclude etc/extra/httpd-autoindex.conf
Include etc/extra/httpd-vhosts.conf
Include etc/extra/httpd-default.conf
<IfModule ssl_module>
<IfDefine SSL>
Include etc/extra/httpd-ssl.conf
</IfDefine>
</IfModule>
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>Include etc/extra/httpd-xampp.conf
Voilà httpd-vhosts.conf. Je précise les choses suivantes :
- Mon nom d'utilisteur sous Ubuntu est "terzag".
- Le dossier dans lequel je veux stocker mes sites de test (abrégé en /home/login/web avant) est "/home/terzag/Boulot/Web/www".
- L'adresse xxx@xxx.fr est remplacée par ma véritable adresse e-mail (je préfère ne pas la laisser apparaître en clair sur le forum).
- Je n'ai pas de nom de domaine attaché à mon PC ; le nom terzagtest.com est un nom bidon que j'ai rajouté dans /etc/hosts comme indiqué avant.#
# Use name-based virtual hosting.
#
NameVirtualHost *:80# VirtualHost de terzag
<VirtualHost *:80>
ServerAdmin xxx@xxx.fr
DocumentRoot /home/terzag/Boulot/Web/www/
<Directory />
Options FollowSymlinks
AllowOverride None
</Directory>
<Directory /home/terzag/Boulot/Web/www/>
Options Indexes FollowSymlink MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
ServerName terzagtest.com
ServerAlias www.terzagtest.com
ErrorLog /home/terzag/Boulot/Web/www/logs/terzagtest.com-error_log
CustomLog /home/terzag/Boulot/Web/www/logs/terzagtest.com-access_log common
ServerSignature Off
</VirtualHost>
Ok, je simule exactement la même config chez moi pour voir ce que cela donne !
Cordialement ;
Hors ligne
#9 Le 20/06/2006, à 14:32
- M. DECLERCQ
Re : [Résolu] Permissions avec XAMPP
Re-bonjour ;
J'ai trouvé l'erreur.
Voici le fichier avec lequel j'ai fait la simulation :
NameVirtualHost *:80
# VirtualHost de abelthorne
<VirtualHost *:80>
ServerAdmin abelthorne@ton_fai.tld
DocumentRoot /home/admin/web<Directory />
Options FollowSymLinks
AllowOverride None
</Directory><Directory /home/admin/web>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>ServerName domaine.tld
ServerAlias www.domaine.tld
ErrorLog /home/admin/web/logs/domaine.tld-error_log
CustomLog /home/admin/web/logs/domaine.tld-access_log common
ServerSignature Off</VirtualHost>
Il y avait une faute aussi à Symlink qui en fait, s'écrit SymLinks (avec un s à la fin)
Une fois cette erreur corrigée, cela a fonctionné du premier coup ! ! !
Par ailleurs, évite les majuscules sur le nom de tes répertoires.
Web, écrit le : web et ainsi de suite ...
_____________________________________
Bien cordialement ;
Monsieur Laurent DECLERCQ
Dernière modification par M. DECLERCQ (Le 21/06/2006, à 20:16)
Cordialement ;
Hors ligne
#10 Le 20/06/2006, à 14:53
- abelthorne
Re : [Résolu] Permissions avec XAMPP
Ça marche un peu mieux, mais j'en reviens à mon problème de départ. Cette fois, Apache se lance, pas de problème.
J'en ai profité aussi pour renommer mes dossiers avec des minuscules (et j'ai changé le contenu du fichier httpd-vhosts.conf en conséquence).
Mais j'ai encore des problèmes de droits (erreur 403 : accès refusé).
Déjà, je ne comprends pas bien la hiérarchie utilisée par le serveur avec tous ces changements.
J'ai un dossier /home/terzag/boulot/web/www pour stocker mes sites en cours de production. Dedans, j'ai mis un dossier "ads" (qui correspond à un premier site) qui contient un fichier "index.html". Aussi bien les dossiers "www" et "ads" que le fichier "index.html" ont pour le moment les autorisations accordées pour tout le monde (chmod 777).
Donc, maintenant que j'ai configuré cet hôte virtuel et rajouté le nom de domaine à /etc/hosts (en tant que localhost), voilà ce qui m'arrive :
- http://localhost : il se redirige tout seul sur "http://localhost.xampp" avec une erreur 403
- http://terzagtest.com : erreur 403 sans redirection (c'est là que je ne comprends pas du tout où je suis censé être : dans "/home/terzag/boulot/web/www" ? dans (/home/terzag/boulot/web" ?)
Hors ligne
#11 Le 20/06/2006, à 15:10
- M. DECLERCQ
Re : [Résolu] Permissions avec XAMPP
Re bonjour ;
1. Fait moi voir ton fichier hosts :
2. Tes pages html et php doivent se trouver dans www mais si elles se trouvent dans le répertoire ads qui lui même se trouve dans ton répertoire web racine ==> www, tu dois taper ceci pour accéder à index.html qui se trouve dans le répertoire ads) : http://localhost/ads/index.html
Pour ce qui est des droits, il faut que tous tes répertoires et fichiers soit accessibles en lecture et s'il s'agit de scripts php, il faut aussi qu'ils soient exécutables !
Pour ce faire, il te suffit de placer tes pages web dans www ou dans ads qui se trouve dans www et de taper les commandes suivantes dans un terminal :
sudo chmod 777 /home/tonlogin/www
et
sudo chmod 777 -R /home/tonlogin/www
Ensuite, il te suffit de vérifier les droits en tapant ceci :
ls -l /home/tonlogin/www
Petites précision :
localhost, 127.0.0.1, ainsi que ce que tu as rajouté dans ton fichiers hosts pointe sur ton réperoire web racine, dans ton cas, c'est ==> www
_____________________________________
Bien cordialement ;
Monsieur Laurent DECLERCQ
Dernière modification par M. DECLERCQ (Le 21/06/2006, à 20:17)
Cordialement ;
Hors ligne
#12 Le 20/06/2006, à 15:17
- abelthorne
Re : [Résolu] Permissions avec XAMPP
Re ;
1. Fait moi voir ton fichier hosts :
127.0.0.1 localhost
127.0.1.1 terzag-desktop
127.0.0.1 terzagtest.com
127.0.0.1 www.terzagtest.com# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
2. Tes pages html, scripts php doivent se trouver dans www mais si elles se trouvent dans le répertoire ads qui lui même se trouve dans ton répertoire web racine ==> www, tu dois taper ceci pour y accéder : http://localhost/ads/index.html
Ok, donc la racine du serveur est bien /home/terzag/boulot/web/www/ ; je n'étais plus sûr de rien avec ces refus de permissions.
Pour ce qui est des droits, il faut que tous tes répertoires et fichiers soit accessibles en lecture et s'il s'agit de scripts php, il faut aussi qu'ils soient exécutables !
Pour ce faire, il te suffit de placer tes pages web dans www ou dans ads qui se trouve dans www et de taper les commandes suivantes dans un terminal :
sudo chmod 777 /home/tonlogin/www
et
sudo chmod 777 -R /home/tonlogin/www/
Ensuite, il te suffit de vérifier les droits en tapant ceci :
ls -l /home/tonlogin/www/
Justement, c'est bien le cas. Tout est en permissions complètes (777) à partir du dossier /home/terzag/boulot/web/www/ (inclus) et j'ai des erreurs 403. Est-ce que le problème pourrait venir des permissions des dossiers parents (boulot ou web) ?
Dernière modification par abelthorne (Le 20/06/2006, à 15:19)
Hors ligne
#13 Le 20/06/2006, à 15:36
- M. DECLERCQ
Re : [Résolu] Permissions avec XAMPP
Re-bonjour ;
Effectivement cela peut être une source d'erreur ! J'avais pas capté les répertoires boulot et web .
Tentes les commandes suivantes dans un teminal. Normalement, cela devrait régler le problème :
sudo chmod 755 /home
sudo chmod 755 /home/terzag
sudo chmod 755 /home/terzag/boulot
sudo chmod 755 /home/terzag/boulot/web
sudo chmod 777 -R /home/terzag/boulot/web/
Ps : Normalement, pour les deux premiers, c'est déjà ça !
Pour le troisième, je sais pas, c'est toi qui l'a créé.
Le quatrième idem, je sais pas !.
La dernière commande, elle est récursive, c-a-d que tous les répertoires et fichiers contenus dans le répertoire web auront les permissions 777 ce qui normalement inclu le répertoire racine du serveur web ainsi que ton répertoire ads et aussi, l'ensemble des fichiers que ces deux répertoires contiennent !.
Tiens moi au courant.;)
___________________________________________
Bien cordialement ;
Monsieur Laurent DECLERCQ
Dernière modification par M. DECLERCQ (Le 20/06/2006, à 16:03)
Cordialement ;
Hors ligne
#14 Le 20/06/2006, à 15:44
- abelthorne
Re : [Résolu] Permissions avec XAMPP
Ah oui, voilà qui est mieux. Ça a l'air de marcher. Ouf.
Merci pour les explications et le temps passé.
Hors ligne
#15 Le 20/06/2006, à 15:49
- M. DECLERCQ
Re : [Résolu] Permissions avec XAMPP
Re Bonjour ;
Bien, je suis content d'avoir pu t'aider .
Ps : N'oubli pas de donner les bons droits à chaque nouvelles pages web ou répertoires que tu crééra dans dans ton répertoire web racine.
N'oubli pas de mettre [RESOLU] dans le titre de cette discussion.
____________________________________________________
Bien cordialement ;
Monsieur Laurent DECLERCQ
Dernière modification par M. DECLERCQ (Le 20/06/2006, à 16:04)
Cordialement ;
Hors ligne
#16 Le 21/01/2007, à 19:09
- Cmoi
Re : [Résolu] Permissions avec XAMPP
Bonjour, j'ai suivi exactemement la même procédure mais du coup, je n'arrive plus à accéder à l'écran de "contrôle" de Xampp, puisque http://localhost/ affiche maintenant le contenu de mon site virtuel. Et j'aimerais pouvoir accéder à PHPMyAdmin.
Hors ligne
#17 Le 28/10/2011, à 13:18
- Schnouff
Re : [Résolu] Permissions avec XAMPP
Bonjour,
comme vous pouvez tous le constater j'écris ce message en 2011 bien que les précédents messages dates de 2007, au plus.
Enfin bref, "Le tutoriel" de M. DECLERCQ m'a été très utile. Et, je le félicite pour cette clarté d'explications. Aussi, merci.
Néanmoins, j'ai été confronté au même problème que Cmol. Alors, je voudrais signaler que j'ai détourner ce problème en rajoutant (dupliquant) un nouveau VirtualHost que j'ai nommé : localhost, au lieu de : domaine.tld (pour reprendre le nom de l'exemple du message #2). Je l'ai rajouté dans le même fichier, à savoir httpd-vhosts.conf. Cependant j'ai supprimer ces quatre lignes
ServerAlias www.domaine.tld
ErrorLog /home/tonlogin/web/logs/domaine.tld-error_log
CustomLog /home/tonlogin/web/logs/domaine.tld-access_log common
ServerSignature Off
Certes, ce n'est probablement pas la bonne manière de procéder. Mais ça à le m'hérite de ré-afficher la page d’accueil de XAMP lorsque l'on écrit localhost dans le navigateur internet, et du coup, de dépanner. Alors je tenais à le faire partager.
Évidemment si quelqu'un à la bonne méthode à proposer, je reste preneur.
Hors ligne
Pages : 1