Remplacez le dossier racine Web htdocs de XAMPP par un autre


18

J'essaie de changer le XAMPPrépertoire par défaut de la racine Web de l ' /opt/lampp/htdocsen un autre comme /home/me/Dropbox/public_htmlsans succès.

J'ai édité le fichier /opt/lampp/etc/httpd.conf

# old line: DocumentRoot "/opt/lampp/htdocs"
DocumentRoot "/home/me/Dropbox/public_html"

#...etc...

# old line: <Directory "/opt/lampp/htdocs">
<Directory "/home/me/Dropbox/Work/public_html">
#
# Possible values for the Options directive are "None", "All",
# or any combination of:
#   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
# etc...

J'ai fait cela comme dit dans cet article: Utiliser Ubuntu One pour synchroniser les htdocs?

Ensuite, j'ai redémarré Apacheet j'ai une erreur d'autorisation 403sur chaque page que j'ai appelée avec le navigateur Web.

J'ai donc changé l'autorisation de dossier et de fichiers en 755.

Je l'ai fait comme indiqué dans cet article:
Quelles autorisations de fichier dois-je définir sur la racine Web?

Le problème reste toujours le même, j'ai l' 403erreur sur chaque page que j'essaie d'atteindre avec le navigateur Web.

J'ai le même problème sur une Macutilisation XAMPP.

Donc tout fonctionne bien si le dossier reste l'original /opt/lampp/htdocs.

Comment puis-je le changer correctement?


Je ne trouve pas le dossier opt, est-ce à l'intérieur d'un autre dossier ou quelque chose? J'ai déjà recherché presque tout le dossier d'installation de xampp et je ne le trouve pas, aidez

Je l'ai fait sur une Ubuntudistribution, utilisez-vous peut-être une autre distribution? À partir du dossier racine, /je trouverai le optdossier.
vitto

Réponses:


15

Open /opt/lampp/etc/httpd.conf change nobody et nogroup

<IfModule unixd_module>
#
# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.  
#
# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
# running httpd, as with most system services.
#
User nobody
Group nogroup
</IfModule>

à votre nom d'utilisateur et à votre groupe


2

Eu le même problème et voici ce que j'ai fait:

Exécutez cette commande pour arrêter xampp:

sudo /opt/lampp/lampp stop

Ouvert /opt/lampp/etc/httpd.conf

Remplacez votre_dossier par le dossier que vous souhaitez utiliser

 DocumentRoot "/home/username/your_folder"
 <Directory "/home/username/your_folder">

Changer Useret Groupvaleur de daemonà:

User nobody
Group nogroup

définissez chmod sur votre_dossier avec cette commande

sudo chmod 777 /home/username/your_folder

Enregistrez le fichier et démarrez xampp avec cette commande:

sudo /opt/lampp/lampp start

Ouvrez votre navigateur et entrez cette URL:

http://localhost/your_folder/

Terminé, j'espère que cela vous aidera.


1

Le problème était sur le type de groupe d'utilisateurs dans le httpd.conffichier qui doit être défini sur staffpuis je n'ai pas besoin de modifier les autorisations de dossier sur le dossier que je voudrais utiliser en tant que racine Web.


1

Si vous faites cela pour pouvoir créer des fichiers dans le dossier htdocs, accédez simplement à opt / lampp, puis ouvrez-le dans le terminal et écrivez

sudo chmod 777 htdocs /

C'est ça!


0

Vous pouvez créer un lien symbolique

ln -s /home/username/public_html/ /opt/lampp/yoursymlink 

avec votre nom d'utilisateur "~ nom d'utilisateur" comme lien symbolique afin que vous puissiez conserver le même emplacement URL

localhost/~username pour les fichiers comme si vous utilisiez le serveur Apache par défaut et non XAMPP.


0

Je viens de le résoudre en suivant les étapes ci-dessous:

  1. Installez d'abord xampp en suivant les étapes

    $ sudo cd Downloads && sudo chmod a+x ./your-downloaded-xampp-file.run && sudo ./your-downloaded-xampp-file.run
    
  2. Changer le propriétaire du fichier du répertoire / opt / lampp. nom d'utilisateur doit être le nom d'utilisateur de votre nouveau nom de dossier dossier racine

    sudo chown -hR  username:root /opt/lampp
    
  3. Éditer /opt/lampp/etc/httpd.conf

    sudo gedit /opt/lampp/etc/httpd.conf
    
  4. éditez le chemin racine de votre document vers documentroot de windows monté et les lignes suivantes

    <IfModule unixd_module>
       User nobody
       Group nogroup
    </IfModule>
    
  5. redémarrez xampp. Et vous constaterez que l'erreur interdite a disparu


0

Eu le même problème sous Linux 18.3. Aucun des éléments ci-dessus n'a fonctionné exactement comme décrit, mais la combinaison suivante a fonctionné:

Dans le fichier /opt/lampp/etc/httpd.conf, j'ai apporté les modifications suivantes:

Remplacer:

    <IfModule unixd_module>
    User daemon 
    Group daemon
    </IfModule>

par:

    <IfModule unixd_module>
    User myusername 
    Group myusername
    </IfModule>

et plus bas remplacer:

    DocumentRoot "/opt/lampp/htdocs"
    <Directory "/opt/lampp/htdocs">

par

    DocumentRoot "/home/myusername/webdir" 
    <Directory "/home/myusername/webdir"

Ainsi, "myusername" est mon nom d'utilisateur Linux, et "webdir" est le nom du répertoire dans mon répertoire personnel où les fichiers php sont stockés.

Dans le terminal, arrêtez lampp avant d'enregistrer le fichier, recommencez. Dans le navigateur, localhost pointe alors sur "webdir".


-1

Au format NTFS, vous ne pouvez pas définir d'autorisations de dossier. Ouvrez /opt/lampp/etc/httpd.conf.

Modifier l'
utilisateur ComputerName
Group ComputerName

Et après cela, vous pouvez accéder aux liens symboliques dans htdocs.


1
Où est NTFS formatdit dans la question? De plus, le reste de la réponse ne semble pas répondre à la question du PO.
saji89

-2

Créez simplement un fichier d'index sur votre nouveau htdocsdossier.


Pouvez-vous modifier cela pour fournir des détails expliquant comment procéder?
Eliah Kagan

pas compréhensible ce qu'il a essayé d'expliquer en une seule ligne
nmrony

Plus d'instructions seraient très utiles.
Jos
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.