- LAMP, Linux Apache MySQL PHP
- MariaDB
- apache2
- Configuring user directories for Apache Web Server
- The «P» part
- Configuration
- Apache2 configuration file: /etc/apache2/apache2.conf
- Test PHP
- phpMyAdmin
- PHP: /etc/php5/apache2/php.ini
- MySQL : /etc/mysql/my.cnf
- LAMP, Linux Apache MySQL PHP
- MySQL
- apache2
- Настройка каталогов пользователей для веб-сервера Apache
- Часть "P"
- Конфигурирование
- Файл конфигурации Apache2: /etc/apache2/apache2.conf
- Проверка PHP
- phpMyAdmin
- PHP: /etc/php5/apache2/php.ini
- MySQL : /etc/mysql/my.cnf
- Смотри также
LAMP, Linux Apache MySQL PHP
Before starting the installation, make sure your distribution is up to date (the ‘#’ indicates that you should do this as root):
MariaDB
Next install MariaDB using the following command:
# apt install mariadb-server mariadb-client
Immediately after you have installed the MariaDB server, you should run the next command to secure your installation.
# mysql_secure_installation
The previous script change root password and make some other security improvements.
You must never use your root account and password when running databases. The root account is a privileged account which should only be used for admin procedures. You will need to create a separate user account to connect to your MariaDB databases from a PHP script. You can add users to a MariaDB database by using a control panel like phpMyAdmin to easily create or assign database permissions for users.
apache2
The web server can be installed as follows:
# apt install apache2 apache2-doc
Configuring user directories for Apache Web Server
Configure Apache module userdir in /etc/apache2/mods-enabled/userdir.conf as follows:
UserDir public_html UserDir disabled root AllowOverride All Options MultiViews Indexes SymLinksIfOwnerMatch Order allow,deny Allow from all Order deny,allow Deny from all
From apache 2.4 and later use instead:
UserDir public_html UserDir disabled root AllowOverride All Options MultiViews Indexes SymLinksIfOwnerMatch Require all granted Require all denied
Create directory as user (not as root):
$mkdir /home/$USER/public_html
Change group as root (substitute your username) and restart web server:
# chgrp www-data /home//public_html # service apache2 restart
If you get a Forbidden error when accessing home folder through Apache check /home/username has permissions drwxr-xr-x. If the permissions are wrong correct them as such:
To be able to serve PHP (PHP needs to be installed as per instructions) check that /etc/apache2/mods-available/php5.conf is correct:
SetHandler application/x-httpd-php Require all granted SetHandler application/x-httpd-php-source Require all denied # To re-enable php in user directories comment the following lines # (fromto .) Do NOT set it to On as it # prevents .htaccess files from disabling it. ## # php_admin_value engine Off # #
Place some web content in ~/public_html and see the results at http://localhost/~username
The «P» part
Installing the PHP subset of LAMP in Debian is quite simple, you just type this as root in an console (the # is the root prompt symbol):
If you prefer Perl, then you might consider:
# apt install perl libapache2-mod-perl2
If you prefer Python, then you might consider:
# apt install python3 libapache2-mod-python
Configuration
Apache2 configuration file: /etc/apache2/apache2.conf
You can edit this file when needed, but for most simple applications, this should not be necessary as most stuff is now done using conf.d.
Test PHP
To test the PHP interface, edit the file /var/www/html/test.php:
and insert the following code.
Afterwards, point your browser to http:///test.php to start using it.
phpMyAdmin
Probably you also want to install phpMyAdmin for easy configuration:
To have access to phpMyAdmin on your website (i.e. http://example.com/phpmyadmin/ ) all you need to do is include the following line in /etc/apache2/apache2.conf (needed only before Squeeze, since 6.0 it will be linked by the package install script to /etc/apache2/conf.d/phpmyadmin.conf -> ../../phpmyadmin/apache.conf automatically):
Include /etc/phpmyadmin/apache.conf
Go to http:///phpmyadmin/ to start using it. (Use the IP or name of your PC/server instead of (The localhost IP is always 127.0.0.1).)
PHP: /etc/php5/apache2/php.ini
A usual issue with PHP configuration is to enable MySQL. Just edit the file and uncomment the following line (tip: search for mysql)
Note that this should not be needed anymore as conf.d is now used.
MySQL : /etc/mysql/my.cnf
You can find configuration examples in /usr/share/doc/mysql-server/examples
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
Настройте модуль Apache userdir /etc/apache2/mods-enabled/userdir.conf следующим образом:
UserDir public_html UserDir disabled root AllowOverride All Options MultiViews Indexes SymLinksIfOwnerMatch Order allow,deny Allow from all Order deny,allow Deny from all
Создайте директорию обычного пользователя (не через root аккаунт):
$mkdir /home/$USER/public_html
Измените группу от имени root (подставив свое имя пользователя) и перезапустите Веб-сервер:
# chgrp www-data /home//public_html # service apache2 restart
В случае возникновения ошибки Forbidden при доступе к домашней директории /home/username через Apache, проверьте имеются ли разрешения на директорию типа drwxr-xr-x. Если разрешения некорректны, исправьте их на корректные:
Для обработки PHP скриптов (PHP должен быть установлен в соответствии с инструкциями) проверьте, что правильно сконфигурирован:
SetHandler application/x-httpd-php SetHandler application/x-httpd-php-source # To re-enable php in user directories comment the following lines # (fromto .) Do NOT set it to On as it # prevents .htaccess files from disabling it. ## # php_admin_value engine Off # #
Поместите некоторое 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
После этого откройте в браузере http:///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
Перейдите по адресу http:///phpmyadmin/ для начала использования. (Используйте IP или имя вашего PC/сервера вместо (IP локального хоста всегда 127.0.0.1).)
PHP: /etc/php5/apache2/php.ini
Обычной проблемой конфигурации PHP является активация MySQL. Просто отредактируйте файл и раскомментируйте следующую строку (Совет: ищите MySQL)
Примечание: В этом нет необходимости так как в настоящее время используется conf.d
MySQL : /etc/mysql/my.cnf
Вы можете найти пример конфигурации в /usr/share/doc/mysql-server/examples