В данной теме рассмотрим установку Nginx, PHP, MySql на Centos, LEMP.
Установка NGINX.
1. Установим репозитарий Nginx с официального сайта Nginx:
sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
2. Запускаем установку web-сервера Nginx:
sudo yum install nginx
3. Запускаем Nginx:
sudo systemctl start nginx.service
4.Добавим правило в iptables на 80 порт /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
сохраняем и перезапускаем службу.
service iptables restart
5. Проверяем в браузере по ip-адресу сервера доступность Nginx:
http://ip-адрес/
6.Добавим Nginx в автозагрузку:
sudo systemctl enable nginx.service
Установка MARIADB.
7. Переходим к установке MariaDB.
sudo yum install mariadb-server mariadb
8. Запускаем MariaDB:
sudo systemctl start mariadb
9. Запустим автоматическую настройку безопасности MySQL:
sudo mysql_secure_installation
Задаем пароль суперпользователя.
После этого, вы должны ответить «Y» (Да), на все необходимые вопросы или нажать «Enter».
10. Добавим MariaDB в автозагрузку:
sudo systemctl enable mariadb.service
Установка PHP.
11. Устанавливаем php, php-mysql и php-fpm:
sudo yum install php php-mysql php-fpm
12. Редактируем конфигурационный файл php.ini:
sudo vi /etc/php.ini
Ищем параметр cgi.fix_pathinfo, убираем «;» перед параметром, который комментирует его, и меняем значение на 0:
cgi.fix_pathinfo=0
13.Переходим к конфигурационному файлу php-fpm www.conf:
sudo vi /etc/php-fpm.d/www.conf
Ищем параметр listen и приводим его в такой вид:
listen = /var/run/php-fpm/php-fpm.sock
14. Запускаем PHP и добавляем в автозапуск:
sudo systemctl start php-fpm sudo systemctl enable php-fpm.service
Настройка NGINX.
15. Делаем настройку Nginx, конфигурация файла default.conf:
sudo vi /etc/nginx/conf.d/default.conf
Файл в стандартном видео выглядит так:
server { listen 80; server_name localhost; location / { root /usr/share/nginx/html; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } }
Данных настроек достаточно, для запуска Веб-сервера, но далее в процессе работы возможно вам понадобится более тонкая настройка Nginx.
Добавим опцию index.php после index, чтобы использовать файлы PHP при запросе каталога.
В server_name пишем доменное имя или IP-адрес сервера.
Добавляем
try_files $uri $uri/ =404;
try_files $uri =404;
Раскомментируем часть строк, как показано ниже.
Приводим файл к такому виду, можно полностью скопировать содержимое ниже и заменить ваш конфиг.
server { listen 80; server_name adminwin.ru или_IP_сервера; root /usr/share/nginx/html; index index.php index.html index.htm; location / { try_files $uri $uri/ =404; } error_page 404 /404.html; error_page 500 502 503 504 /ithelp21.html; location = /ithelp21.html { root /usr/share/nginx/html; } location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
Сохраняем и перезагружаем Nginx:
sudo systemctl restart nginx
16. Проверяем работу Веб-сервера.
В /usr/share/nginx/html/ создаем файл info.php:
touch /usr/share/nginx/html/info.php
Записываем в него следующий код и сохраняем:
17. В браузере открываем ссылку нашего сервера с добавлением info.php:
http://IP_адрес_сервера/info.php
Смотрим информацию о сервере, установка которого успешно завершена.