Cambia la cartella radice web htdocs di XAMPP in un'altra


18

Sto cercando di cambiare la XAMPPdirectory predefinita della radice web /opt/lampp/htdocsin un'altra come /home/me/Dropbox/public_htmlsenza successo.

Ho modificato il file /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...

L'ho fatto come detto in questo articolo: Usando Ubuntu One per sincronizzare htdocs?

Quindi ho riavviato Apachee ho un errore di autorizzazione 403su ogni pagina che ho chiamato con il browser web.

Quindi ho cambiato il permesso di cartelle e file 755.

L'ho fatto come detto in questo articolo:
quali permessi di file dovrei impostare su web root?

Il problema rimane sempre lo stesso, ho l' 403errore su ogni pagina che cerco di raggiungere con il browser web.

Ho lo stesso problema su un Macutilizzo XAMPP.

Quindi tutto funziona bene se la cartella rimane l'originale /opt/lampp/htdocs.

Come posso cambiarlo correttamente?


Non riesco a trovare la cartella opt, è all'interno di un'altra cartella o qualcosa del genere? Ho già cercato quasi tutta la cartella di installazione di xampp e non riesco a trovarla, per favore

L'ho fatto su una Ubuntudistribuzione, forse stai usando un'altra distribuzione? A partire dalla cartella principale /troverò la optcartella.
vitto

Risposte:


15

Apri /opt/lampp/etc/httpd.conf cambia nessuno e 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>

al tuo nome utente e al tuo gruppo


2

Ho avuto lo stesso problema ed ecco cosa ho fatto:

Esegui questo comando per interrompere xampp:

sudo /opt/lampp/lampp stop

Aperto /opt/lampp/etc/httpd.conf

Cambiare your_folder alla cartella che vuoi utilizzare

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

Cambia Usere Groupvaluta da daemona:

User nobody
Group nogroup

imposta chmod su your_folder con questo comando

sudo chmod 777 /home/username/your_folder

Salvare il file e avviare xampp con questo comando:

sudo /opt/lampp/lampp start

Apri il tuo browser e inserisci questo URL:

http://localhost/your_folder/

Fatto, spero che questo aiuti.


1

Il problema riguardava il tipo di gruppo di utenti nel httpd.conffile che deve essere impostato staffe quindi non ho bisogno di cambiare i permessi della cartella sulla cartella che vorrei usare come web root.


1

Se lo stai facendo in modo da poter creare file nella cartella htdocs, vai a opt / lampp e quindi apri nel terminale e scrivi

sudo chmod 777 htdocs /

Questo è tutto!


0

È possibile creare un collegamento simbolico

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

con il tuo nome utente "~ nome utente" come collegamento simbolico in modo da poter mantenere la stessa posizione dell'URL

localhost/~username per file come se si stesse utilizzando il server Apache predefinito e non XAMPP.


0

Ho appena risolto i seguenti passaggi:

  1. Innanzitutto installa xampp seguendo i seguenti passaggi

    $ sudo cd Downloads && sudo chmod a+x ./your-downloaded-xampp-file.run && sudo ./your-downloaded-xampp-file.run
    
  2. Cambia il proprietario del file della directory / opt / lampp. il nome utente dovrebbe essere il nome utente del nuovo nome utente della cartella documentroot

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

    sudo gedit /opt/lampp/etc/httpd.conf
    
  4. modifica il percorso della radice del documento su documentroot di Windows montato e le seguenti righe

    <IfModule unixd_module>
       User nobody
       Group nogroup
    </IfModule>
    
  5. riavvia xampp. E troverai che l'errore proibito è sparito


0

Ha avuto lo stesso problema con Linux 18.3. Nessuna delle precedenti ha funzionato esattamente come descritto, ma la seguente combinazione ha funzionato:

Nel file /opt/lampp/etc/httpd.conf ho apportato le seguenti modifiche:

Sostituire:

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

di:

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

e più in basso sostituire:

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

di

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

Quindi "myusername" è il mio nome utente linux e "webdir" è il nome della directory nella mia directory home dove sono memorizzati i file php.

Nel terminale, arrestare lampp prima di salvare il file, ricominciare. Nel browser localhost punterà quindi a "webdir".


-1

Nel formato NTFS non è possibile impostare le autorizzazioni per le cartelle. Aperto/opt/lampp/etc/httpd.conf .

Modifica Nome
utente computer Nome
gruppo computer

E dopo puoi accedere ai collegamenti simbolici in htdocs.


1
Dove viene NTFS formatdetto nella domanda? Anche il resto della risposta non sembra rispondere alla domanda del PO.
saji89,

-2

Basta creare un file indice nella nuova htdocscartella.


Puoi modificarlo per fornire alcuni dettagli che spiegano come farlo?
Eliah Kagan,

non è comprensibile ciò che ha cercato di spiegare solo in una riga
nmony

Ulteriori istruzioni sarebbero molto utili.
Jos,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.