Linux -- это интересно

Как быстро развернуть Apache в Ubuntu


Рубрика: Изучаем Linux -> Администрирование -> Интернет ПО
Метки: | | |
Просмотров: 15853

Сразу делаю оговорку: -Это не для тех случаев, когда нужно организовать профессиональный хостинг, а скорее для ситуаций попроще – изучение, разработка сайтов, веб-сервер для домашней или офисной сети начинаю. Статья для тех, кто только начинает...

Все делается очень просто и очень быстро. Никакой возни с настройками и курения манов.

Для установки lamp-сервера (linux apache mysql php сервер) одной командой введите в консоли:

sudo tasksel install lamp-server

До установите пакет phpmyadmin. Почему именно его? Потому что получим хороший графический интерфейс для управления базами mysql.

sudo aptitude install phpmyadmin

Сделайте рестарт апач сервера

sudo /etc/init.d/apache2 reload

По умолчанию, каталог для сайта - /var/www. Можете проверить его работу, открыв в браузере ссылку http://localhost

Но это не очень удобно, потому что права записи в этот каталог имеет только рут, да и сайтов тестировать нужно несколько...

Можно создать единую папку для всех сайтов, которые будут там размещаться, например /home/user/www.

Лучшее место для такой папки - это домашний каталог пользователя. Почему именно туда? Это позволит работать с файлами сайтов (добавлять, удалять, изменять) без прав рута. Но можно оставить папку по умолчанию /var/www а в домашней директории сделать ссылку на нее и дать права на запись.

Далее в этой папке создать папку сайта. Например, /home/user/www/site1. И в эту папку кинуть файлы сайта.

sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/site1

Команда создает новую запись виртуального хостинга копируя стандартную запись апача.

sudo gedit /etc/apache2/sites-available/site1

и в этом файле:

1) заменить все /var/www/ на /home/user/www/site1/

2) перед строкой "DocumentRoot /home/user/www/site1/" добавить строку "ServerName site1"

Активируем виртуальный хост:

sudo a2ensite site1
sudo gedit /etc/hosts

и в этом файле добавить строку:

127.0.1.2 site1

рестарт апача для применения настроек:

sudo /etc/init.d/apache2 reload

Готово! Новый сайт должен открываться по http://site1

Если нужно добавить еще сайт, просто повторяются вышеуказанные действия. Конечно с поправкой на то, что новый сайт не может иметь имя site1 и это должно быть site2 или что-то другое. Ну и в файле hosts увеличивать значение ip адреса - 127.0.1.3 и т.д.

Примерно за 20 минут мы получили веб-сервер с поддержкой php и mysql.

*! Примечание относительно phpmyadmin.

Он запускается по адресу http://localhost/phpmyadmin

Но можно переделать на http://phpmyadmin, нужно выполнить вышеописанные действия, только использовать путь к папке phpmyadmin и соответственно использовать имя phpmyadmin где нужно.

*! Примечание относительно php.

По умолчанию параметр register_globals в настройках php отключен, а это значит, что переменные передаваемые в скрипты php через GET, POST будут пустыми (неопределенными).

Исправить эту ситуацию можно двумя путями.

1)

sudo gedit /etc/php5/apache2/php.ini

и там изменить register_globals=off на register_globals=on.

2) Но лучше изменить подход к написанию скриптов и:

непосредственно в них инициализировать передаваемые переменные из массивов $_GET[], $_POST[] или $HTTP_GET_VARS[],$HTTP_POST_VARS[].

Комментариев: 10 RSS

я все сделал по инструкции, в ходе выполнения никаких ошибок не выдавалось, но, есть проблема - не работает phpmyadmin. при попытке его запустить выводится сообщение Not Found, в инете почитал, но не нашел никакой статьи по своей проблеме.

если кто знает, помогоите пожалуйста)

Все, я решил проблему:

Если при вводе http://localhost/phpmyadmin выявляется ошибка, или просто ничего не происходит, то нужно всего лишь в конец файла /etc/apache2/apache2.conf добавить следующую строку:

Include /etc/phpmyadmin/apache.conf

далее презапускаем апач sudo /etc/init.d/apache2 restart, и все, phpmyadmin запускается.

Александр3 2010-11-11 в 15:19:17

Я тоже долго мучился с запуском phpmyadmin... Нужно создать символическую ссылку на phpmyadmin в своем хосте. Например для localhost:

sudo ln -s /usr/share/phpmyadmin/ /var/www

/var/www нужно заменить на путь к вашему хосту.

Дмитрий4 2011-02-24 в 01:03:11

Очень помогло. Долго искал мануал по индейцу, нашел. Хорошо описано. В некоторых сайтах описано через ж***, понят ниче не мог. Тут прочитал,попробовал,у меня всё заработало!

Если Вы ставите Joomla 1.5х незабудьте дать права на контент индейцу, иначе у Вас будет белый экран когда попытаетесь установить ее,либо сообщение, что у отсутствуют права.

#sudo chown -R www-data /var/www/

или любая другая папка по вашему усмотрению на которую Вы самостоятельно перенаправили пути. В /var/www не советую грузить что-либо, к этой папке имеет доступ только root, а лазит с правами root"a это подписать смертный приговор системе.

Сергеич6 2011-04-26 в 13:04:06

Недавно перешел с ubuntu 9.04 на 10.10 и был слегка в замешательстве. Спасибо автору.

apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName

Не удалось достоверно определить полное доменное имя севера, используя 127.0.0.1 для ServerName.

Вылечилось следующим образом:

1) sudo gedit /etc/apache2/httpd.conf

прописываем:

2) ServerName localhost

и перезагружаем сервер

sudo /etc/init.d/apache2 restart

когда меняю папку на home не работает - работает только в var подскажите если не сложно в чем дело

Писал строку

sudo a2ensite site1sudo gedit /etc/hosts

Выдало ошибку:

ERROR: No site found matching /etc/hosts!
ERROR: Site site1sudo does not exist!
ERROR: Site gedit does not exist!

Как быть? Что делать? :(

Упс, ошибочка. Надо было так:

sudo a2ensite site1
sudo gedit /etc/hosts
Оставьте комментарий!
Используйте нормальные имена.Войти через loginza
Если вы уже зарегистрированы как комментатор или хотите зарегистрироваться, укажите пароль и свой действующий email.
(При регистрации на указанный адрес придет письмо с кодом активации и ссылкой на ваш персональный аккаунт, где вы сможете изменить свои данные, включая адрес сайта, ник, описание, контакты и т.д.)



 
(обязательно)