Apache2 + MySQL установка и настройка (Ubuntu/Debian)


banda аватар

banda - Posted on 28 Сентябрь 2009

Ставим apache2 (web-server) и php5:

$ sudo apt-get install apache2 php5 libapache2-mod-php5

Конфигурационный файл Apache2 здесь - /etc/apache2/apache2.conf

Веб-директория - /var/www

Чтобы проверить работоспособность связки apache2 + php5, поместите в веб-директорию файл test.php, в котором содержится следующий текст:

# test.php
<?php phpinfo(); ?>

Теперь в браузере набираем http://<ip_адрес_сервера>/test.php

Должна появиться таблица с конфигурацией и настройками пхп.

Теперь установим MYSQL.

$ sudo apt-get install mysql-server mysql-client php5-mysql

По ходу установку он попросит установить генеральный пароль MySQL - пользователя root (Не путайте с системным root!!!).

Если не спрашивает, установите вручную (для версии php4):

$ mysql -u root
mysql> USE mysql;
mysql> UPDATE user SET Password=PASSWORD('новый_пароль') WHERE user='root';
mysql> FLUSH PRIVILEGES;

Старайтесь никогда не использовать рутовый аккаунт MySQL. Лучше поставить PHPMyAdmin, добавить нового пользователя и назначить ему привелегии:

$ sudo apt-get install phpmyadmin

Конфигурационный файл phpmyadmin находится в директории /etc/phpmyadmin

Теперь, чтоб использовать phpmyadmin в связке с apache2, просто добавьте в /etc/apache2/apache2.conf следующее:

Include /etc/phpmyadmin/apache.conf

Перезапустите Apache2:

$ sudo /etc/init.d/apache2 restart

В браузере пишем http://<ip_адрес_сервера>/phpmyadmin

Входим с помощью рутового пароля (Login - root, password - тот, что указали выше). И уже с помощью этой достаточно мощной и простой тулзы создаем нового пользователя.

Все!

Оригинал взят отсюда: http://pinbay.net/forum/index.php/topic,817.0.html

0
Ваша оценка: Ничего

Хорошая статья, жаль что не сам написал

Здравствуйте, banda!

Я уже использовал ваш мануал на debian - всё отлично работало. Переехал на ubuntu 11.04 и начались чудеса, когда ставил по другой инструкции(про вашу на тот момент не вспомнил). В основном проблемы были с MySQL. Решил снести всю систему(через apt-get purge) и поставить заново уже так, как написано здесь.

Возникла проблема при установке апача

alex607@alex607-Extensa-5620:~$ sudo apt-get install apache2 php5 libapache2-mod-php5
Чтение списков пакетов... Готово
Построение дерева зависимостей       
Чтение информации о состоянии... Готово
Предлагаемые пакеты:
  php-pear
НОВЫЕ пакеты, которые будут установлены:
  apache2 libapache2-mod-php5 php5
обновлено 0, установлено 3 новых пакетов, для удаления отмечено 0 пакетов, и 2 пакетов не обновлено.
Необходимо скачать 0 B/2 968 kB архивов.
После данной операции, объём занятого дискового пространства возрастёт на 8 061 kB.
Выбор ранее не выбранного пакета apache2.
(Чтение базы данных ... на данный момент установлено 163185 файлов и каталогов.)
Распаковывается пакет apache2 (из файла .../apache2_2.2.17-1ubuntu1_i386.deb)...
Выбор ранее не выбранного пакета libapache2-mod-php5.
Распаковывается пакет libapache2-mod-php5 (из файла .../libapache2-mod-php5_5.3.5-1ubuntu7.2_i386.deb)...
Выбор ранее не выбранного пакета php5.
Распаковывается пакет php5 (из файла .../php5_5.3.5-1ubuntu7.2_all.deb)...
Настраивается пакет apache2 (2.2.17-1ubuntu1) ...
Настраивается пакет libapache2-mod-php5 (5.3.5-1ubuntu7.2) ...
 
Creating config file /etc/php5/apache2/php.ini with new version
Настраивается пакет php5 (5.3.5-1ubuntu7.2) ...

При тестировании на http://localhost/test.php браузер выдал ошибку, т.е. апач не работает.

Пробовал запустить:

alex607@alex607-Extensa-5620:~$ sudo /etc/init.d/apache2 start
.: 49: Can't open /etc/apache2/envvars
alex607@alex607-Extensa-5620:~$ sudo /etc/init.d/apache2 restart 
.: 49: Can't open /etc/apache2/envvars

Такой директории нет в /etc/apache2:

alex607@alex607-Extensa-5620:~$ ls /etc/apache2/
mods-available
alex607@alex607-Extensa-5620:~$

Подскажите как можно исправить.
P.S.: Вспомнил, что после 'apt-get purge' сделал rm -r /etc/mysql/ /etc/apache2 /etc/php5 - возможно в этом проблема(

Все удалить вместе конфигами и установить заново.

Я так и сделал:

alex607@alex607-Extensa-5620:~/Desktop/test$ sudo apt-get purge apache2 php5 libapache2-mod-php5
password for alex607: 
Чтение списков пакетов... Готово
Построение дерева зависимостей       
Чтение информации о состоянии... Готово
Пакеты, которые будут УДАЛЕНЫ:
  apache2* libapache2-mod-php5* php5*
обновлено 0, установлено 0 новых пакетов, для удаления отмечено 3 пакетов, и 2 пакетов не обновлено.
После данной операции, объём занятого дискового пространства уменьшится на 8 061 kB.
Хотите продолжить [Д/н]? y
(Чтение базы данных ... на данный момент установлен 174891 файл и каталог.)
Удаляется пакет apache2 ...
Удаляется пакет php5 ...
Удаляется пакет libapache2-mod-php5 ...
Вычищаются файлы настройки пакета libapache2-mod-php5 ...
alex607@alex607-Extensa-5620:~/Desktop/test$ sudo apt-get install apache2 php5 libapache2-mod-php5
Чтение списков пакетов... Готово
Построение дерева зависимостей       
Чтение информации о состоянии... Готово
Предлагаемые пакеты:
  php-pear
НОВЫЕ пакеты, которые будут установлены:
  apache2 libapache2-mod-php5 php5
обновлено 0, установлено 3 новых пакетов, для удаления отмечено 0 пакетов, и 2 пакетов не обновлено.
Необходимо скачать 0 B/2 968 kB архивов.
После данной операции, объём занятого дискового пространства возрастёт на 8 061 kB.
Выбор ранее не выбранного пакета apache2.
(Чтение базы данных ... на данный момент установлено 174877 файлов и каталогов.)
Распаковывается пакет apache2 (из файла .../apache2_2.2.17-1ubuntu1_i386.deb)...
Выбор ранее не выбранного пакета libapache2-mod-php5.
Распаковывается пакет libapache2-mod-php5 (из файла .../libapache2-mod-php5_5.3.5-1ubuntu7.2_i386.deb)...
Выбор ранее не выбранного пакета php5.
Распаковывается пакет php5 (из файла .../php5_5.3.5-1ubuntu7.2_all.deb)...
Настраивается пакет apache2 (2.2.17-1ubuntu1) ...
Настраивается пакет libapache2-mod-php5 (5.3.5-1ubuntu7.2) ...
 
Creating config file /etc/php5/apache2/php.ini with new version
Настраивается пакет php5 (5.3.5-1ubuntu7.2) ...
alex607@alex607-Extensa-5620:~/Desktop/test$ sudo /etc/init.d/apache2 restart
.: 49: Can't open /etc/apache2/envvars

Сервер всё равно не откликается.

http://linux-board.ru/showthread.php?t=12

вот статья хорошая

форум закрытый

ввела apt-get install apache2 php5 libapache2-mod-php5 из рута, пишет
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
E: Не удалось найти пакет phpmyadmin
root@mint:/home/user# apt-get install php
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
E: Не удалось найти пакет php
root@mint:/home/user# apt-get install apache2 php5 libapache2-mod-php5
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
Пакет apache2 недоступен, но упомянут в списке зависимостей другого пакета.
Это может означать, что пакет отсутствует, устарел, или доступен из источников, не упомянутых в sources.list

E: Для пакета apache2 не найден кандидат на установку
E: Не удалось найти пакет php5
E: Не удалось найти пакет libapache2-mod-php5

Как исправить??

я бы сказал что у вас не прописаны репозитории.
посмотрите в /etc/apt/sources.list и в файлы в директории /etc/apt/sources.list.d/

Попробуйте выполнить перед этим apt-get update

После команди установки phpmyadmin 100ПУДОВО надо делать # ln -s /usr/share/phpmyadmin/var/www

сделал

sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf.d/phpmyadmin
/etc/init.d/apache2 reload

вылезло

* Reloading web server config apache2                                                                                                       [Wed Jun 02 18:45:56 2010] [warn] The Alias directive in /etc/apache2/conf.d/phpmyadmin.conf at line 3 will probably never match because it overlaps an earlier Alias.
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
httpd not running, trying to start
(13)Permission denied: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs

Что это и как с этим боротся?Смертельно?Просто в нете куч анепонятной инфы для новичка!

(13)Permission denied: make_sock: could not bind to address 0.0.0.0:80

Это говорит что у тебя нет прав для перезапуска.
перезапускай апач под судо

$ sudo /etc/init.d/apache2 reload

вместо

$ sudo apt-get install apache2 php5 libapache2-mod-php5

достаточно

$ sudo apt-get install apache2 libapache2-mod-php5

php5 - метапакет

А еще можно добавить модулей на PHP

$ apt-get -y install php5-curl php5-gd php5-imagick php5-imap php5-interbase php5-ldap php5-mcrypt php5-memcache php5-mhash php5-odbc php5-pgsql php5-pspell php5-recode php5-snmp php5-sqlite php5-sybase php5-tidy php5-xsl

Такого набора достаточно практически под любые проекты.

php5-sqlite два раза

Цитата:
Теперь в браузере набираем http:///test.php

один слэшик лишний

Цитата:
Include /etc/phpmyadmin/apache.conf

инклюдить ничего не надо, а то при обновлении лишние вопросы будут
достаточно создать симлинк из /etc/phpmyadmin/apache.conf > /etc/apache2/conf.d/phpmyadmin
все что в этой папочке автоматом инклюдится и в conf файлы не лезем

да и рестарт апача не обязателен, хватит и reload

не забываем так же запретить доступ к /phpmyadmin/ с левых IP адресов, а то не ровен час кто нить почикает

Цитата:

один слэшик лишний

Я не нашел его.

Цитата:

да и рестарт апача не обязателен, хватит и reload

какая разница, все равно re :)

Цитата:

не забываем так же запретить доступ к /phpmyadmin/ с левых IP адресов, а то не ровен час кто нить почикает

Я незнаю как запретить доступ. Если можно поделись пожалуйста, расскажи подробнее

В конфиге в блок <Directory>, относящийся к phpmyadmin добавить:

Order deny,allow
Deny from all
Allow from IP

Цитата:

достаточно создать симлинк из /etc/phpmyadmin/apache.conf > /etc/apache2/conf.d/phpmyadmin

все верно, кроме того что симлинк лучше создавать специпльной для этого прогой a2enmod

Цитата:
кроме того что симлинк лучше создавать специпльной для этого прогой a2enmod

А чем вам уже 'ln -s' не угодил то??

автору:
а править конфиги, вместо помещения симлинка в спец. каталог - не Debian/Ubuntu way
:p

Не надо ничего создавать.
Делайте как я написал. Все проверено и работает отлично, без всяких вопросов.
Помогите только защитой phpмойadmin от левых IP

Цитата:
Помогите только защитой phpмойadmin от левых IP

читаем пост выше, там написан шаблон

Отправить комментарий

Google Friend Connect (leave a quick comment)
loading...
Содержание этого поля является приватным и не предназначено к показу.