Translation(s) : English - Русский - Français - Italiano - 简体中文


LAMP, Linux Apache MySQL PHP

Установка

Перед началом установки убедитесь, что ваш дистрибутив находится в актуальном состоянии (обновлен до последней версии)( '#' означает, что вы должны выполнять эти команды с правами администратора):

 # aptitude update && aptitude upgrade

MySQL

Затем установите mysql используя следующую команду:

 # aptitude install mysql-server mysql-client

Сразу после установки сервера MySQL, вы должны изменить пароль суперпользователя сервера MySQL:

* Этот шаг не является необходимым для дистрибутива Lenny, так как Вам будет предложено ввести пароль суперпользователя MySQL во время установки

 # /usr/bin/mysqladmin -u root password 'введите-свой-новый-пароль-здесь'

Вы никогда не должны использовать ваш аккаунт и пароль суперпользователя при запуске баз данных. Аккаунт root является привилегированной учетной записью, которая используется только для административных процедур. Вам необходимо создать отдельную учетную запись пользователя для подключения к базам данных MySQL из скриптов PHP. Вы можете добавлять пользователей баз данных MySQL с помощью панели управления PHPMyAdmin, в которой легко создавать базы данных или назначать разрешения для пользователей.

apache2

Веб-сервер может быть установлен следующим образом:

 # aptitude install apache2 apache2-doc

Настройка каталогов пользователей для веб-сервера Apache

Включить модуль

# a2enmod userdir

Настройте модуль Apache userdir /etc/apache2/mods-enabled/userdir.conf следующим образом:

<IfModule mod_userdir.c>
        UserDir public_html
        UserDir disabled root

        <Directory /home/*/public_html>
                AllowOverride All
                Options MultiViews Indexes SymLinksIfOwnerMatch
                <Limit GET POST OPTIONS>
                        Order allow,deny
                        Allow from all
                </Limit>
                <LimitExcept GET POST OPTIONS>
                        Order deny,allow
                        Deny from all
                </LimitExcept>
        </Directory>
</IfModule>

Создайте директорию обычного пользователя (не через root аккаунт):

$mkdir /home/$USER/public_html

Измените группу от имени root (подставив свое имя пользователя) и перезапустите Веб-сервер:

# chgrp www-data /home/<username>/public_html
# service apache2 restart

В случае возникновения ошибки Forbidden при доступе к домашней директории /home/username через Apache, проверьте имеются ли разрешения на директорию типа drwxr-xr-x. Если разрешения некорректны, исправьте их на корректные:

# chmod 755 /home/<username>

Для обработки PHP скриптов (PHP должен быть установлен в соответствии с инструкциями) проверьте, что {/etc/apache2/mods-available/php5.conf правильно сконфигурирован:

<IfModule mod_php5.c>
    <FilesMatch "\.ph(p3?|tml)$">
        SetHandler application/x-httpd-php
    </FilesMatch>
    <FilesMatch "\.phps$">
        SetHandler application/x-httpd-php-source
    </FilesMatch>
    # To re-enable php in user directories comment the following lines
    # (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
    # prevents .htaccess files from disabling it.
    #<IfModule mod_userdir.c>
    #    <Directory /home/*/public_html>
    #        php_admin_value engine Off
    #    </Directory>
    #</IfModule>
</IfModule>

Поместите некоторое web содержимое в директорию ~/public_html и посмотрите результат через браузер по адресу http://localhost/~username

Часть "P"

Установить подмножество PHP из LAMP в Debian достаточно просто, просто введите это от root в консоли (# указывает на ввод команд от имени суперпользователя)

 # aptitude install php5 php5-mysql libapache2-mod-php5

Если вы предпочитаете Perl, вы можете его установить:

 # aptitude install perl libapache2-mod-perl2

Если вы предпочитаете Python, вы можете его установить:

 # aptitude install python libapache2-mod-python

Конфигурирование

Файл конфигурации Apache2: /etc/apache2/apache2.conf

Вы можете редактировать этот файл при необходимости, но для большинства простых приложений, это не требуется, поскольку большая часть настроек в настоящее время осуществляется при помощи conf.d.

Проверка PHP

Для проверки интерфейса PHP, отредактируйте файл /var/www/apache2-default/test.php:

 # nano /var/www/apache2-default/test.php

и добавьте следующий код.

<?php phpinfo(); ?>

После этого откройте в браузере http://<SERVERIP>/apache2-default/test.php для начала работы.

phpMyAdmin

Вероятно, вы также захотите установить PHPMyAdmin для удобства настройки:

 # aptitude install phpmyadmin

Чтобы получить доступ к ?PhpMyAdmin на Вашем сайте (например http://example.com/phpmyadmin/ ) все, что вам нужно сделать, это включить следующую строку в /etc/apache2/apache2.conf (необходимо только до версии Squeeze, начиная с версии 6,0 это будет включено в сценарий установки пакета /etc/apache2/conf.d/phpmyadmin.conf -> ../../phpmyadmin/apache.conf автоматически ):

Include /etc/phpmyadmin/apache.conf

Перезапустить Apache:

 # /etc/init.d/apache2 restart

Перейдите по адресу http://<SERVERIP>/phpmyadmin/ для начала использования. (Используйте IP или имя вашего PC/сервера вместо <SERVERIP> (IP локального хоста всегда 127.0.0.1).)

PHP: /etc/php5/apache2/php.ini

Обычной проблемой конфигурации PHP является активация MySQL. Просто отредактируйте файл и раскомментируйте следующую строку (Совет: ищите MySQL)

extension=mysql.so

Примечание: В этом нет необходимости так как в настоящее время используется conf.d

MySQL : /etc/mysql/my.cnf

Вы можете найти пример конфигурации в /usr/share/doc/mysql-server/examples

Смотри также

Эта страница в основном базируется на http://linux.justinhartman.com/Setting_up_a_LAMP_Server.