Nie można zapisać zmian w konfiguracji globalnych

Nie można zapisać zmian w konfiguracji globalnych

Problem

Po wejściu na stronie Administrator "back-end", w obszarze Konfiguracja globalna i klikając na przycisk "Zapisz" lub "Zastosuj", aby zapisać bieżący wybór konfiguracji witryny, pojawia się następujący komunikat o błędzie: "Wystąpił błąd! Nie można otworzyć pliku configuration.php pisać! ", ewentualnie towarzyszy:" JFTP::write: złe odpowiedzi "Jeśli pracujesz w trybie FTP włączone.

Przyczyny tego błędu

Konfiguracja skryptu aktualizacji w Joomla jest w stanie zmienić zawartość pliku "configuration.php" w celu odzwierciedlenia zmian wprowadzonych na stronie konfiguracji globalnej. Joomla ma albo już nie można zapisać do pliku i/lub nie można dokonać zapisu pliku (np. R/W). Od Joomla 1.5.x próbuje zrobić "configuration.php" zapisu przed zapisaniem konfiguracja ten ostatni jest zazwyczaj sprawy. Najczęstszym powodem tego jest to, że plik "configuration.php" jest własnością innego użytkownika logiczne na ten trudny wobec zrobić ten zmieniać. Jeśli próbujesz zmienić konfiguracji globalnej z FTP włączone, będzie ostatnim zwykle być identyfikatora logowania FTP; z FTP wyłączona będzie tożsamość procesu serwera sieci web (często nazwany jako coś jak "apache" lub "www-data"). (Zwykle sprawdzisz na szczegóły własności pliku logując się do witryny za pomocą programu FTP. Alternatywnie można użyć eXtplorer – patrz poniżej). Niestety będą zablokowane zmiana odpowiedni tryb, aby zaktualizować konfiguracji globalnej umożliwiających i wyłączenie trybu FTP (i tym samym zmiana tożsamości logiczne próby zmiany konfiguracji) jest określana przez dane globalne konfiguracja przechowywane w tym pliku.

Sugerowane rozwiązania

Uwaga: nie jest wystarczające, aby tylko "configuration.php" plik zapisywalny dla wszystkich użytkowników. Jak to się będzie można zaktualizować konfiguracji globalnej tylko raz, po którym Joomla 1.5.x będzie zrobić plik tylko do odczytu dla wszystkich użytkowników i tym samym ponownego wprowadzenia problem.

  1. Zmienić właściciela pliku "configuration.php" na mecz albo identyfikatora logowania FTP, jeśli za pomocą "FTP włączone" na stronie, lub tożsamość procesu serwera sieci web, jeśli używasz "FTP wyłączona".
    Uwaga: To nie jest coś, co można zrobić w Joomla.
    Jeśli masz pełną kontrolę nad serwerem (np. lokalny serwer lub serwer wirtualny) następnie powinny być w stanie to zrobić za pomocą odpowiedniego narzędzia (na przykład "chown" na serwerze Linux). Na współużytkowanym serwerze, należy skontaktować się z pomocy technicznej dla Twojej organizacji lub Twojego ISP, wyjaśnić problem i poprosić ich odpowiednio zmienić właściciela pliku.
  2. Zainstalować składnik eXtplorer (dostępne z katalogu rozszerzeń Joomla- extensions.joomla.org) – Jeśli nie jest już na miejscu. To pozwoli Ci przeglądać i manipulowania plików zarówno w trybie "plik" (przy użyciu tożsamości użytkownika procesu serwera sieci web) lub "ftp" tryb za pomocą tożsamości użytkownika logowania FTP. Chociaż prawdopodobnie nie będzie w stanie zmienić właściciela pliku za pomocą tego narzędzia, można użyć jednego z trybów aby "configuration.php" zapisywalne dla wszystkich użytkowników. To pozwoli Ci zmienić konfiguracji globalnej raz-lub więcej, jeśli dołączysz w tym zmiana trybu FTP tak, aby odpowiadał on na własność plik "configuration.php" (ale patrz uwaga poniżej).
    Uwaga: zmiana trybu FTP będą miały wpływ na własności stosuje się pliki przesłane do witryny pod nowe ustawienie (np. podczas instalowania rozszerzeń).
  3. Zobacz szczegółowy utrwalić ten człowiek odkrył na stronie dyskusji tego dokumentu. Przekonałem się, że to działa z moim instalacji v. 1.5.23.
  4. Dostać twój tkanina serwer wobec uruchomić PHP jako CGI lub FastCGI. Gwarantuje to, że kod PHP jest wykonywane przy użyciu tego samego użytkownika, identyfikator używany podczas przesyłania, Joomla kod za pomocą FTP. Tym samym istnieje konflikt jako identyfikator procesu PHP "configuration.php" pliku jest taki sam jak jego właściciel. Jeśli nie wiesz, jak ustawić CGI lub szybko CGI, kontakt z administratorem serwera lub dostawcy usług hostingowych o poradę.

Tło

Powyżej jest uproszczeniu, ale poniżej może być interesów i wartości dla wszystkich i również pomoc doświadczonych użytkowników formułuje własne rozwiązanie tego problemu.

  • Plik "configuration.php" jest generowana automatycznie w folderze głównym witryny (od "configuration.php-dist") w miejscu instalacji i zawiera się w nim specyficzne informacje podane podczas procesu instalacji. Zmiany wprowadzone w obszarze Konfiguracja globalna w witrynie administracyjnej "back-end" są zapisywane do "configuration.php", gdy używany jest przycisk "Zapisz" lub "Zastosuj".
  • Gdy Joomla próby aktualizacji "configuration.php" plik to pierwsze próby aby zapisywalny, a po aktualizacji pliku zrobić to niezapisywalnych (czyli tylko do odczytu) jako środek ostrożności.
  • Pliki na serwerze sieci web hosting swojej strony Joomla będzie własnością jednego z kilku podmiotów, jak były umieszczone lub utworzona na serwerze. Ogólnie rzecz biorąc pliki na stronie Joomla będzie właścicielem przez jedną z dwóch tożsamości użytkownika:
    1. Akta Wyślij pliki przez FTP lub zainstalowany FTP w trybie aktywnym zwykle przyznaje się własność identyfikatora użytkownika odpowiadającego identyfikatora logowania FTP dla tej witryny,
    2. Pliki zainstalowane z Joomla i z FTP tryb nieaktywny będą zazwyczaj przydzielane własności przez identyfikator użytkownika "Fantom", używane do uruchamiania procesów serwera głównej sieci web, a także skrypty Joomla (często nazwany jako coś jak "apache" lub "www-data").