Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: LAMP права доступа  (Прочитано 5216 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн xSPiRiTx

  • Автор темы
  • Любитель
  • *
  • Сообщений: 87
    • Просмотр профиля
LAMP права доступа
« : 23 Июня 2014, 01:12:07 »
Ubuntu + LAMP
файлы всяких CMS должны скидываться в /var/www/html. но просто так ничего туда не кинешь. либо от рута либо...я сделал sudo chown -R spirit /var/www/html...после чего свободно владею директорией и кидаю туда что хочу.

Однако, при установки Drupal 7 он выдал мне сообщение, что не может создать директорию files и файл настроек settings.php. А я помню где-то был видос как друпал в убунте ставили...так вот оттуда я урвал команду sudo chown -R www-data:www-data /var/www/html. Все ок, установка движка прошла успешно и круто. Но! Теперь то я не владею этой директорией.

И что? чтобы закинуть туда модулей друпалу мне нужно заходить от root? или как быть?

delovoy

  • Гость
Re: LAMP права доступа
« Ответ #1 : 23 Июня 2014, 01:43:04 »
каталогом /var/www/ владеть должен тот пользователь и группа от которого работает веб демон, в данном случае www-data.

Добавить вашего пользователя в группу www-data - как вариант

Оффлайн xSPiRiTx

  • Автор темы
  • Любитель
  • *
  • Сообщений: 87
    • Просмотр профиля
Re: LAMP права доступа
« Ответ #2 : 23 Июня 2014, 01:51:27 »
добавил себя в группу www-data...эффекта никакого не заметил  :idiot2:

Оффлайн .ubuntufan

  • Активист
  • *
  • Сообщений: 638
    • Просмотр профиля
Re: LAMP права доступа
« Ответ #3 : 23 Июня 2014, 01:52:24 »
Добавьте вашего пользователя в группу www-data
sudo usermod -a -G www-data spirit
sudo chmod 774 /var/www/html/ -R


Пользователь решил продолжить мысль 23 Июня 2014, 01:53:08:
добавил себя в группу www-data...эффекта никакого не заметил  :idiot2:

Вторую команду попробуй

Оффлайн xSPiRiTx

  • Автор темы
  • Любитель
  • *
  • Сообщений: 87
    • Просмотр профиля
Re: LAMP права доступа
« Ответ #4 : 23 Июня 2014, 02:24:51 »
.
« Последнее редактирование: 24 Июня 2014, 00:25:54 от xSPiRiTx »

Оффлайн .ubuntufan

  • Активист
  • *
  • Сообщений: 638
    • Просмотр профиля
Re: LAMP права доступа
« Ответ #5 : 23 Июня 2014, 02:31:52 »
sudo chown www-data:www-data /var/www/html/ -R
sudo chmod 774 /var/www/html/ -R


Пользователь решил продолжить мысль 23 Июня 2014, 02:34:13:
Цитировать
не разработкой занимаюсь, а систему ковыряю. и так уже третий год

Ну что поделаешь, раз головушка светлая
« Последнее редактирование: 23 Июня 2014, 02:36:07 от .ubuntufan »

Оффлайн xSPiRiTx

  • Автор темы
  • Любитель
  • *
  • Сообщений: 87
    • Просмотр профиля
Re: LAMP права доступа
« Ответ #6 : 23 Июня 2014, 12:32:50 »
и тогда Друпал не может создать свои конфиги. конечно можно их руками создать с правами 777, а потом менять на другие.

А если я сделаю вот как...начну запускать apache от своего имени, а не от www-data пользователя, и так же присвою себя владельцем директории /var/www?

sudo nano /etc/apache2/envvarsи там в этих строчках заменить www-data на себя
export APACHE_RUN_USER=spirit
export APACHE_RUN_GROUP=spirit
присваиваем права на директории
sudo chown spirit.spirit /var/lock/apache2sudo chown spirit.spirit -R /var/log/apache2sudo chown -R spirit.spirit /var/wwwперезагружаем сервер
sudo service apache2 restart
по желанию можно слинковать себе в хомяка для удобства
ln -s /home/spirit/html /var/www/htmlи ту да же до кучи конфигу виртуальных хостов
ln -s /home/spirit/html/Apache-VirtualHosts.conf /etc/apache/sites-enabled/000-default

delovoy

  • Гость
Re: LAMP права доступа
« Ответ #7 : 23 Июня 2014, 12:42:12 »
Нормальный такой костыль =))

Оффлайн xSPiRiTx

  • Автор темы
  • Любитель
  • *
  • Сообщений: 87
    • Просмотр профиля
Re: LAMP права доступа
« Ответ #8 : 23 Июня 2014, 12:49:41 »
ну просто на данный момент помогло решить мою проблему только это  :idiot2:

delovoy

  • Гость
Re: LAMP права доступа
« Ответ #9 : 23 Июня 2014, 13:11:21 »
ну просто на данный момент помогло решить мою проблему только это  :idiot2:

Проще залить файлы в данную директорию и назначить права и пользователя которые должны быть. А так же облегчить себе жизнь и добавить пользователя www-data в группу своего пользователя (править umask придется, если при создании (пусть будет добавлении) нового файла в каталог /var/www/ выставлялись соответствующие права для положительного отклика веб демона на ваш таки запрос)  :D
« Последнее редактирование: 23 Июня 2014, 13:14:43 от Delovoy »

Оффлайн .ubuntufan

  • Активист
  • *
  • Сообщений: 638
    • Просмотр профиля
Re: LAMP права доступа
« Ответ #10 : 23 Июня 2014, 14:50:48 »
Покажи вывод
ls -laR /var/www/html
cat /etc/group | egrep 'www-data|spirit'

Оффлайн xSPiRiTx

  • Автор темы
  • Любитель
  • *
  • Сообщений: 87
    • Просмотр профиля
Re: LAMP права доступа
« Ответ #11 : 23 Июня 2014, 17:41:07 »
.
« Последнее редактирование: 24 Июня 2014, 00:25:32 от xSPiRiTx »

Оффлайн .ubuntufan

  • Активист
  • *
  • Сообщений: 638
    • Просмотр профиля
Re: LAMP права доступа
« Ответ #12 : 23 Июня 2014, 17:56:52 »
ковырять вам систему еще три года...  :idiot2:

Оффлайн xSPiRiTx

  • Автор темы
  • Любитель
  • *
  • Сообщений: 87
    • Просмотр профиля
Re: LAMP права доступа
« Ответ #13 : 24 Июня 2014, 00:26:11 »
1) обновляем список пакетов
sudo apt-get update

2) устанавливаем lamp сервер
sudo apt-get install lamp-server^
*во время установки попросят задать пароль для баз MySQL

3) устанавливаем php
sudo apt-get install php5 php5-gd php5-mysql php5-curl php5-cli php5-cgi php5-dev

4) устанавливаем phpMyAdmin (если нужно) для работы с БД
sudo apt-get install phpmyadmin
*во время установки в качестве веб-сервера выбрать apache2
*настроить базу данных для phpmyadmin в с помощью dbconfig-common - ДА
*ввести пароль MySQL, который мы задавали до этого

5) в файле /etc/apache2/apache2.conf добавить это:
ServerName localhost
Include /etc/phpmyadmin/apache.conf

6) линкуем phpmyadmin, если не открывается
sudo ln -s /usr/share/phpmyadmin/ /var/www

7) правим файл /etc/php5/apache2/php.ini
max_execution_time = 120
max_input_time = 90
memory_limit = 128M
post_max_size = 150M
upload_max_filesize = 150M
session.gc_maxlifetime = 14400

раскомментируем в этом же файле строчку
extension=msql.so

8) далее устанавливаем пакетapache2-mpm-itk (для запуска виртуальных хостов от своего пользователя)
sudo apt-get install apache2-mpm-itk

9) выставим права
sudo chown -R username:username /var/www
cd /var/www/
find ./ -type d -exec chmod 4770 {} \;

10) добавляем виртуальный хост.
в /var/www создаем директорию с именем будущего хоста (например, drupal.my)

11) в /etc/apache2/sites-available/ создаем файл.conf хоста, например /etc/apache2/sites-available/drupal.my.conf

12) содержимое должно выглядеть таким образом:
<VirtualHost *:80>
    ServerAdmin admin@drupal.my
    ServerName drupal.my
    ServerAlias www.drupal.my
    DocumentRoot /var/www/drupal.my
    ErrorLog ${APACHE_LOG_DIR}/drupal.my-error.log
    CustomLog ${APACHE_LOG_DIR}/drupal.my-access.log combined
    <IfModule mpm_itk_module>
        AssignUserId username username
    </IfModule>
</VirtualHost>
*вместо drupal.my везде вписываете имя своего хоста, а вместо username своё имя пользователя в системе

13) активируем наш хост
sudo a2ensite drupal.my.conf

14) в /etc/hosts записываем наш хост таким образом
127.0.0.1   drupal.my


Полное удаление lamp из системы:
1) sudo apt-get purge libapache2-mod-auth-mysql phpmyadmin

2) dpkg -l | grep ^ii | grep mysql-server | awk -F' ' '{ print $2 }'
*команда выведет на экран список пакетов....их все нужно удалить (sudo apt-get purge пакет1 пакет2 пакет3 ...)

3) dpkg -l | grep ^ii | grep apache2 | awk -F' ' '{ print $2 }'
*тоже самое, что и в п.2

4) sudo apt-get autoremove

 

Страница сгенерирована за 0.017 секунд. Запросов: 21.