Змініть веб-кореневу папку htdocs XAMPP на іншу


18

Я намагаюся змінити XAMPPкаталог за замовчуванням веб-кореневого веб-сайту /opt/lampp/htdocsна інший, як /home/me/Dropbox/public_htmlбез успіху.

Я відредагував файл /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...

Я це робив, як сказано в цій статті: Використання Ubuntu One для синхронізації htdocs?

Потім я перезапустив, Apacheі у мене є помилка дозволу 403на кожній сторінці, яку я дзвонив у веб-браузері.

Тому я змінив дозвіл на папки та файли на 755.

Я це зробив, як сказано в цій статті:
Які дозволи на встановлення файлів потрібно встановити на веб-корінь?

Проблема як і раніше залишається тією ж, у мене є 403помилка на кожній сторінці, яку я намагаюся отримати за допомогою веб-браузера.

У мене така ж проблема з Macвикористанням XAMPP.

Таким чином, кожне працює добре, якщо папка залишається оригінальною /opt/lampp/htdocs.

Як я можу це правильно змінити?


Я не можу знайти папку opt, це всередині іншої папки чи щось таке? Я вже шукав майже всю папку установки xampp і не можу її знайти, будь ласка, допоможіть :(

Я робив це на Ubuntuдистрибуції, можливо, ви використовуєте інший дистрибутив? Починаючи з кореневої папки, /я знайду optпапку.
vitto

Відповіді:


15

Відкрита /opt/lampp/etc/httpd.conf зміна ніхто і 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>

до свого імені користувача та вашої групи


2

Був той самий випуск, і ось що я зробив:

Виконайте цю команду, щоб зупинити xampp:

sudo /opt/lampp/lampp stop

відчинено /opt/lampp/etc/httpd.conf

Змініть свою папку в папку, яку ви хочете використовувати

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

Змінити User& Groupзначення з daemon:

User nobody
Group nogroup

за допомогою цієї команди встановіть chmod у свою папку

sudo chmod 777 /home/username/your_folder

Збережіть файл і запустіть xampp за допомогою цієї команди:

sudo /opt/lampp/lampp start

Відкрийте веб-переглядач і введіть цю URL-адресу:

http://localhost/your_folder/

Готово, сподіваюся, що це допомагає.


1

Проблема полягала в типі групи користувачів у httpd.confфайлі, який повинен бути встановлений, staffі тоді мені не потрібно змінювати дозволи папки в папці, яку я хотів би використовувати як веб-корінь.


1

Якщо ви робите це так, щоб ви могли створювати файли в папці htdocs, тоді просто перейдіть до опції / lampp, а потім відкрийте у терміналі та запишіть

sudo chmod 777 htdocs /

Це воно!


0

Можна створити символічне посилання

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

з вашим іменем користувача "~ ім'я користувача" як символічним посиланням, щоб ви могли зберегти те саме місцезнаходження URL-адреси

localhost/~username для файлів, як якщо б ви використовували сервер Apache за замовчуванням, а не XAMPP.


0

Щойно вирішено це, виконуючи наведені нижче кроки:

  1. Спочатку встановіть xampp, виконавши наступні дії

    $ sudo cd Downloads && sudo chmod a+x ./your-downloaded-xampp-file.run && sudo ./your-downloaded-xampp-file.run
    
  2. Зміна власника файлу каталогу / opt / lampp. ім'я користувача має бути іменем вашого нового імені власника папки documentroot

    sudo chown -hR  username:root /opt/lampp
    
  3. редагувати /opt/lampp/etc/httpd.conf

    sudo gedit /opt/lampp/etc/httpd.conf
    
  4. відредагуйте кореневий шлях документа до змонтованого Windows Documroot та наступних рядків

    <IfModule unixd_module>
       User nobody
       Group nogroup
    </IfModule>
    
  5. перезапустити xampp. І ви знайдете заборонену помилку пішла


0

Була така ж проблема під Linux 18.3. Жодне з вищезгаданого не працювало точно так, як описано, але наступна комбінація:

У файлі /opt/lampp/etc/httpd.conf я внесла такі зміни:

Замінити:

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

автор:

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

і далі вниз замінити:

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

по

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

Таким чином, "myusername" - це моє ім'я для linux, а "webdir" - це ім'я в моєму домашньому каталозі, де зберігаються php-файли.

У терміналі зупиніть лампу перед збереженням файлу, почніть знову. У браузері localhost буде вказувати на "webdir".


-1

У форматі NTFS не можна встановлювати дозволи для папок. Відкрити /opt/lampp/etc/httpd.conf.

Змінити
користувач ім'я комп'ютера
Групи ім'я комп'ютера

Після цього ви можете отримати доступ до символьних посилань у htdocs.


1
Де NTFS formatсказано в питанні? Крім того, решта відповіді, схоже, не відповідає на питання ОП.
saji89

-2

Просто зробіть індексний файл у новій htdocsпапці.


Чи можете ви відредагувати цю інформацію, щоб пояснити, як це зробити?
Елія Каган

Не зрозуміло, що він намагався пояснити лише в одному рядку
nmrony

Більше інструкцій було б дуже корисно.
Джос
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.