Не може да спаси Глобални промени в конфигурацията

 
Не може да спаси Глобални промени в конфигурацията

Проблемът

След въвеждане на глобалната конфигурация област на сайта администратор "back-end" и след това щракнете върху "Запиши" или "Приложи" бутона, за да запишете текущия избор на сайта конфигурация, се появява следното съобщение за грешка: "Възникна грешка! Не мога да отворя configuration.php файл, за да пиша! ", евентуално придружен с:" JFTP::write: лош отговор "Ако Вие работите в режим на FTP поддръжка.

Причина за тази грешка

Скрипт за конфигурация актуализация в Joomla е бил в състояние да променят съдържанието на файла "configuration.php", за да се отразят направените промени в глобалната конфигурация страница. Joomla е или е не може да запише файл и/или не може да се направи файла записваем (т.е. R/W). Тъй като Joomla 1.5.x се опитва да направи "configuration.php" записваем преди да запишете конфигурацията последното още обикновено е случаят. Най-честата причина за това е, че файла "configuration.php" е собственост на различни логически потребител към този се опитва да направи промяната. Ако се опитвате да промените глобалната конфигурация с FTP поддръжка, на последния ще обикновено се вашия FTP вход ID; с FTP с увреждания ще бъде уеб сървър процес идентичност (често наречени като нещо като "apache" или "www-данни"). (Можете да обикновено проверите на файла собственост детайли като влезете вашия сайт с FTP програма. Като алтернатива можете да използвате eXtplorer – виж по-долу). За съжаление вие ще бъдат заключени извън промяна на подходящ режим за актуализиране на конфигурацията на глобално като позволява и блокирането на FTP режим (и по този начин променя логическа идентичност, опит за промяна на конфигурацията) се определя от глобалната конфигурация данни, държани в този файл.

Предложени решения

Бележка: не е достатъчно да се направи "configuration.php" файл записваем за всички потребители. Като след това ще бъде успеете да актуализирате конфигурацията на глобално само веднъж, след което Joomla 1.5.x ще направи файла само за четене за всички потребители и по този начин отново проблема.

  1. Промяна на собствеността на "configuration.php" файл, за да отговарят вашата FTP потребителско име, ако използвате "FTP поддръжка" за сайта, или на идентичността на процеса на уеб сървъра, ако използвате "FTP забранен".
    Забележка: Това не е нещо, което можете да направите в рамките на Joomla.
    Ако имате пълен контрол на сървъра (например на локалния сървър или виртуален сървър) тогава трябва да успеете да направите това с помощта на подходяща програма (например "chown" за Linux сървър). На споделен сървър, трябва да се обърнете към техническата поддръжка за вашата организация или вашия интернет доставчик, обясни проблема и да ги помолите промени файла собствеността по подходящ начин.
  2. Инсталирайте компонента eXtplorer (получени от директорията за Joomla разширения – extensions.joomla.org) – Ако все още не са на място. Това ще ви позволи да видите и манипулира файлове в двете "файл" режим (с използване на уеб сървър процес самоличността на всеки потребител) или "ftp" режим, използвайки вашия FTP вход самоличността на потребителя. Въпреки че вероятно не ще успеете да промените файла собственост с този инструмент, можете да използвате един от начините да направи "configuration.php" записваем за всички потребители. Това ще ви позволи да промените конфигурацията на глобално веднъж-или повече, ако сте включили в тази промяна на FTP режим, така че да съответства на собствеността на файла "configuration.php" (но виж забележката по-долу).
    Забележка: промяна на FTP режим ще засегне собствеността върху файловете, качени на сайта под новата настройка (например при инсталиране на разширения).
  3. Вижте конкретните прикрепвам този човек, открити на дискусионната страница на този документ. Аз открих, че това работи с моята инсталация на v. 1.5.23.
  4. Получите вашия уеб сървър да тече PHP като CGI или FastCGI. Това гарантира, че PHP код се изпълнява с помощта на един и същи потребител ID както използван при качването на Joomla код с помощта на FTP. По този начин няма конфликт като ИД на процеса на PHP, промяна на файл "configuration.php" е същото като собственика на файла. Ако не знаете как да настроите CGI или бързо CGI, обърнете се към вашия сървърен администратор или доставчик на хостинг услуги, за съвет.

Фон

По-горе е опростено обяснение, но следното може да е от интерес и стойността на всички и също да помогне потребители експерт формулира своите собствени решение на този проблем.

  • Файлът "configuration.php" се генерира автоматично в главната папка на сайта (от "configuration.php-dist") по време на монтаж на място и включва в него конкретното хранилище информацията, дадена по време на инсталационния процес. Промените, направени в областта на глобалната конфигурация в административните на сайта "back-end" са написани на "configuration.php", когато се използва бутона "Запиши" или "Приложи".
  • Когато Joomla се опитва да актуализира "configuration.php" файл, първите опити да го записваем, и след актуализиране на файла да го unwriteable (т.е. само за четене) от съображения за сигурност.
  • Файлове на уеб сървър, хостинг вашия сайт Joomla ще бъдат собственост на един от няколко структури, в зависимост от това как те са били поставени или създадени на сървъра. Обикновено файлове на Joomla сайт ще бъдат притежавани от някоя от двете потребителска самоличност:
    1. Файлове качите чрез FTP или инсталиран с FTP режим активно ще обикновено се разпределят собствеността върху потребителски ИД съответстващи на вашия FTP вход ID за този сайт,
    2. Инсталирани от Joomla и с FTP режим неактивни файлове обикновено ще бъде разпределена собствеността от "фантом" потребителския ИД, използван за изпълнение на основните уеб сървър процеси, както и Joomla скриптове (често наречени като нещо като "apache" или "www-данни").