Задача: Получить работающую CMS Drupal на локальном компьютере для отладки приложений.
sudo aptitude install apache2 php5 mysql-client mysql-server phpmyadmin libapache2-mod-php5 libapache2-mod-auth-mysql php5-mysql
В сумме пакеты "весят" около 46 Мб.
И создаём ссылку на phpmyadmin
sudo ln -s /etc/phpmyadmin /var/www
По умолчанию файлы web приложений находятся в папке:
/var/www
А вэб сервер доступен по адресу:
Если сервер работает нормально то вы должны увидеть надпись:
phpmyadmin доступен по адресу:
Создаем папку в которой у нас будут находится файлы сайта, на пример:
mkdir /home/%username%/web/mysite
и кладем в нее фалы drupal (Скачать можно с http://drupal.ru)
Затем открываем файл /etc/hosts
kdesudo kate /etc/hosts
и добавляем в него строчку
127.0.1.1 mysite
Конечно в место mysite можно написать все что угодно, mysite приведено в качестве примера. Это делается для того, чтобы наш сайт был доступен по по этому адресу. В данном случае по http://mysite
Так же, чтобы апач не выдавал ошибку
Restarting web server apache2 apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
при его перезагрузке добавляем в /etc/hosts в первую строчку название вашего компьютера.
127.0.0.1 localhost.localdomain localhost my-desktop
127.0.1.1 my-desktop
127.0.1.1 mysite
Где my-desktop - имя вашего компьютера.
Теперь настраиваем виртуальный хост в apache
Фалы конфигурации apache2
/etc/apache2/ - Основная папка
|
|___ /mods-available - доступные модули apache
|
|___ /mods-enabled - подключенные модули apache
|
|___ /sites-available - доступные сайты
|
|___ /sites-enabled - подключенные сайты
|
|____apache2.conf - основной файл конфигурации apache2
В папке sites-available находятся файлы конфигурация виртуальных хостов.
А в папке sites-enabled находятся линки на файлы конфигураций из sites-available.
Это позволяет легко и быстро включать и выключать сайты, путем добавления или удаления линков из sites-enabled.
Тоже самое касается и модулей.
Создаем файл конфигурации хоста mysite
kdesudo kate /etc/apache2/sites-available/mysite
в который добавляем
<VirtualHost *:80>
ServerAlias mysite www.mysite
DocumentRoot /home/usernsme/web/mysite
<Directory home/username/web/mysite/>
AllowOverride All
</Directory>
</VirtualHost>
Документация по виртуальным хостам Apache
Затем включаем наш виртуальный хост.
В apache2 для этого существуют специальные команды:
a2ensite, a2dissite, a2enmod, a2dismod. Всё что они делают - проставляют и удаляют ссылки в соответствующих каталогах.
sudo a2ensite mysite
И включаем модуль rewrite для работы "чистых ссылок"
sudo a2enmod rewrite
Создаем базу mysql. Лично я использую для работы с MySQL phpmyadmin.
Перезапускаем apache
sudo /etc/init.d/apache2 restart
и вводим в браузере http://mysite
Возможно, вам понадобиться установить права на запись на папку и вложенные подкаталоги где находится ваш сайт.
chmod -R 777 /home/username/web/mysite/
Так же не забудьте создать папку files (нужна для работы Drupal)
mkdir /home/username/web/mysite/files
и дать ей права на запись
chmod 777 /home/username/web/mysite/files
Если у вас не будут работать "чистые ссылки" удостоверьтесь что в директории с друпалом есть файл .htaccess У меня он почему то упорно не хотел разархивироваться.