Проблема
После ввода области глобальной конфигурации на сайте администратора "back-end" и затем нажмите кнопку «Сохранить» или «Применить» для сохранения текущего выбора конфигурации сайта, появляется следующее сообщение об ошибке: «произошла ошибка! Не удается открыть файл configuration.php писать!», возможно в сопровождении: «JFTP::write: плохой ответ «если вы работаете в режиме FTP включен.
Причина этой ошибки
Сценарий обновления конфигурации в Joomla был не в состоянии изменить содержимое файла «configuration.php», чтобы отразить изменения, внесенные на странице глобальной конфигурации. Joomla имеет либо не удается выполнить запись в файл и/или не в состоянии сделать файл доступным для записи (то есть R/W). С Joomla 1.5.x пытается сделать «configuration.php» для записи перед сохранением конфигурации, последний более обычно происходит. Наиболее распространенной причиной для этого является, что файл «configuration.php» является владельцем другой логический пользователь в один пытается сделать изменения. Если вы пытаетесь изменить глобальную конфигурацию с FTP включен, последняя воля обычно быть FTP логин; с FTP отключен, он будет веб сервера идентификацией (часто называют что-то вроде «apache» или «веб данные»). (Вы можете обычно проверить файл собственности детали, войдя в ваш сайт с FTP программы. Альтернативно вы можете использовать eXtplorer – см. ниже). К сожалению будет заблокирован изменения в соответствующий режим для обновления глобальной конфигурации как включение и отключение режима FTP (и таким образом изменение логической удостоверения, пытаясь изменить конфигурацию) определяется глобальной конфигурации данных, содержащихся в этом файле.
Предлагаемые решения
Примечание: это не достаточно просто сделать «configuration.php» файла для записи для всех пользователей. Как тогда вы будет иметь возможность обновлять глобальной конфигурации только один раз, после которого Joomla 1.5.x сделать файл доступным только для чтения для всех пользователей и таким образом вновь проблемы.
- Измените владельца файла «configuration.php», указав либо FTP логин при использовании «FTP включен» для сайта, или идентификатор процесса сервера web, если вы используете «FTP отключена».
Примечание: Это не то, что вы можете сделать в Joomla.
Если у вас есть полный контроль над сервером (например, локальный сервер или виртуальный сервер) то вы должны быть в состоянии сделать это с помощью соответствующей утилиты (например, «chown» для сервера Linux). На общем сервере, следует связаться с технической поддержкой для вашей организации или вашего провайдера, объяснить проблему и попросить их соответствующим образом изменить владельца файла. - Установите компонент eXtplorer (можно получить из каталогов расширений Joomla – extensions.joomla.org) – если не уже на месте. Это позволит вам просматривать и управлять файлами в режиме оба «file» (с использованием идентификатора пользователя процесса веб сервера) или «ftp» режиме, используя ваш FTP Логин идентификатор пользователя. Хотя вы вероятно не будете способны изменить владельца файла с помощью этого инструмента, можно использовать один из режимов, чтобы сделать «configuration.php» для записи для всех пользователей. Это позволит вам изменить глобальной конфигурации один раз или более, если включить в том, что изменения в режим FTP, чтобы он соответствовал собственности вашего файла «configuration.php» (но см. Примечание ниже).
Примечание: смена режима FTP будут влиять на право собственности, применяется к файлам, загруженные на сайт под новый параметр (например при установке расширений). - Смотрите конкретные исправить этот человек обнаружил на странице обсуждения этого документа. Я обнаружил, что это работает с моей установкой v. 1.5.23.
- Получите ваш веб-сервер для запуска PHP как CGI или FastCGI. Это гарантирует, что PHP код выполняется с использованием того же пользователя, ID, как используется при загрузке кода Joomla с использованием FTP. Таким образом нет никакого конфликта, как идентификатор процесса PHP, изменяя файл «configuration.php» является таким же, как владельца файла. Если вы не знаете как установить CGI или Fast CGI, обратитесь к администратору сервера или хостинг-провайдер для консультации.
Справочная информация
Это упрощенное объяснение, но следующие может представлять интерес и ценность для всех, а также помочь опытным пользователям формулировать свои собственные решения этой проблемы.
- Файл «configuration.php» создается автоматически в корневой папке сайта (от «configuration.php-dist») во время установки сайта и включает в него участкам информации в процессе установки. Изменения, внесенные в области глобальной конфигурации в сайта административные «back-end» записываются в «configuration.php», когда кнопка «Сохранить» или «Применить».
- Всякий раз, когда Joomla пытается обновить «configuration.php» файла его первые попытки сделать его для записи, и после обновления файла сделать недоступных (т.е. только для чтения) в качестве меры безопасности.
- Одним из нескольких объектов, в зависимости от того, как они были помещены или созданы на сервере будет владельцем файлов на веб-сервере хостинг вашего сайта Joomla. Обычно файлы на сайте Joomla будет принадлежать любой из двух удостоверений пользователей:
- Загрузка по FTP или установлен активный режим FTP файлы будут обычно выделены собственности идентификатора пользователя соответствующий FTP логин для этого сайта
- Файлы, установленные с Joomla и с неактивных режим FTP обычно выделяется владение идентификатору «призрак» пользователя, которая используется для запуска процессы основные веб-сервера, а также сценарии Joomla (часто называют что-то вроде «apache» или «веб данные»).