Невозможно установить друпал. доступ запрещен

1597
Nitish

Я не могу установить drupal в мой каталог / var / www / html. Когда я пытался установить, он говорит

File system  The directory sites/default/files is not writable. An automated attempt to create this directory failed, possibly due to a permissions problem. To proceed with the installation, either create the directory and modify its permissions manually or ensure that the installer has the permissions to create it automatically. For more information, see INSTALL.txt or the online handbook. OK Unicode library PHP Mbstring Extension Error Settings file The settings file does not exist. The Drupal installer requires that you create a settings file as part of the installation process. Copy the ./sites/default/default.settings.php file to ./sites/default/settings.php. More details about installing Drupal are available in INSTALL.txt. 

Я установил 777разрешение на каталог. drupalИ ls -lдля каталога defaultэто [root @ localhost default] # ls -l всего 28

-rwxrwxrwx. 1 nitish root 23197 Mar 30 06:20 default.settings.php drwxrwxrwx. 2 nitish root 4096 Mar 30 06:26 files 
1

1 ответ на вопрос

1
terdon

В общем, не забудьте указать конкретную команду, которую вы выполняете. Когда вы говорите: «Я не могу установить Drupal», у нас нет возможности узнать, что вы делаете, и правильно ли вы это делаете.

Итак, то, что вы описываете, является классической проблемой с разрешениями. В Linux вы можете устанавливать вещи только как root. Если вы пытаетесь установить из исходного кода, и вы уже запустили его configureскрипт и скомпилировали его с помощью make, теперь вы должны запустить make installкак root.

Если вы следуете (как следует) HOWTO Fedora и устанавливаете его через yum, убедитесь, что вы работаете yumкак root.

В любом случае, это ОЧЕНЬ плохая идея иметь /var/wwwглобально доступную запись ( 777). Это открывает мир проблем безопасности.

Наконец, как общее примечание, если вы хотите иметь доступ для чтения / записи к каталогу /foo/bar/baz, который вызывается, этого недостаточно chmod 777 /foo/bar/baz. Это даст вам доступ к bazкаталогу, но у вас все еще нет доступа к нему, /foo/barпоэтому это не будет иметь никакого значения. Это как открыть дверь в ванную, а не входную дверь дома, ванная комната теоретически доступна, но вы не можете войти в дом, так что это не имеет значения. Что вам нужно сделать, это изменить разрешения для вашего целевого каталога и каждого над ним. Вы можете сделать это с помощью -Rпереключателя:

chmod -R 744 /foo/ 

Это установит права доступа для /fooвсех его подкаталогов. Однако, повторяю, не делайте этого для /var/wwwкаталога, это серьезная угроза безопасности .

Похожие вопросы