Jakie prawa do folderów i plików dla Joomla?

Odpowiedź

Po zainstalowaniu Jooma wszystkie pliki i katalogi mają już uprawnienia poprawnie ustawione.
Foldery: 775, pliki: 664.

Na uwagę zasługuje plik konfiguracyjny configuration.php, który po zakończeniu konfiguacji z uwagi na bezpieczeństwo powinien mieć ustawione prawa na 644 lub 444.

Uprawnienia można nadać z poziomu klienta ftp (np. Total Commander, Pliki / zmień atrybuty).

Jeśli korzystasz z funkcji lub rozszerzeń Joomli, które uploadują pobrane pliki i zapisują na dysk, należy zadbać, aby folder, w którym dokonywany ma być zapis - miał ustawione odpowiednie prawa dostępu pozwalające na zapis. Ustaw na folderze alternatywnie:

  • 775 - aby można było do niego zapisać pliki z poziomu użytkownika-właściciela konta hostingowego
    (Apache z handlerem suPHP, takie ustawienie jest na naszym serwerze)
  • 777 - aby można było do niego zapisać pliki z poziomu użytkownika nobody
    (Apache z handlerem DSO)

Zaawansowani użytkownicy

Rekurencyjne nadawanie uprawnień dla folderów i plików - wydaj komendy z poziomu Unix / Linux shell:

find . -type d -exec chmod 775 {} ;
find . -type f -exec chmod 664 {} ;

Prawa własności dla folderów i plików
Jeśli nie da się ustawić uprawnień z poziomu Unix / Linux shell - może to oznaczać, że nie jesteś ich właścicielem; poproś administratora systemu, aby nadał ci prawo własności:

chown -R owner, gdzie opcja -R zadziała rekurencyjnie

Komuniakt błędu:
JFolder::create: Path not in open_basedir paths  Unable to create destination"

- kiedy pobierasz  lub instalujesz rozszerzenia.

Problem może wystąpić z powodu niewłaściwej konfiguracji Joomla. Związany jest z ustawieniami php na serwerach cPanel / WHM, w szczególności z zastosowaniem open_basedir.

Aby rozwiązać problem, należy zastosować poniższe kroki:
  1. Login to Joomla Administartor panel
  2. Go to Global Configuration
  3. Click "Server"
  4. Change the path from /public_html/tmp to "tmp"
  5. Login to control Panel(CPanel)
  6. Open File Manager
  7. Open Folder "libraries"
  8. Open Folder "joomla"
  9. Open Folder "filesystem"
  10. Right Click on "folder.php" and click Edit
  11. Look for the line, (search = obd):
    Code:
    $obd = ini_get('open_basedir');


    Comment out that line with // at the beginning so it becomes:
    Code:
    //$obd = ini_get('open_basedir');
  12. Save and Close