Поиск по сайту:
Если муху с монитора ты сгоняешь мишкой, значит, тебе пора идти домой. (Неизвестный автор)

Как установить стек LEMP (Linux, Nginx, MySQL, PHP) на OpenSUSE

09.11.2016
Как установить стек LEMP (Linux, Nginx, MySQL, PHP) на OpenSUSE

В сегодняшней простой статье мы рассмотрим шаги, необходимые для установки и настройки базового стека LEMP на OpenSUSE VPS. Стек LEMP является синонимом сервера LEMP или веб – сервера LEMP. Он включает Linux, Nginx, MySQL (MariaDB) и PHP.

ПОДГОТОВКА

Войдите на сервер с помощью SSH:

ssh root@server_ip

 

Перед тем как начать, введите следующую команду, чтобы проверить есть ли у вас правильная версия ОС установленная на вашем компьютере:

cat /etc/issue

 

Вывод команды. Конечно, если вы используете другую версию OpenSUSE выход будет показывать эту версию:

Welcome to openSUSE 13.1 "Bottle" - Kernel \r (\l)

 

А теперь без лишних слов, мы можем начать путем удаления предварительно установленного Apache веб-сервера, так как мы заменим его Nginx.

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

systemctl stop apache2.service
systemctl disable apache2.service
zypper rm apache2

 

Обновите систему

Теперь, когда веб-сервер Apache был удален, мы можем обновить систему:

zypper up

 

Когда обновления закончены, можно приступать к настройке стека LEMP путем установки MySQL. На нашем большом опыте в работе с операционной системой, которой является OpenSUSE мы наткнулись на ошибки и не удалось запустить MySQL из-за отсутствия зависимостей PERL. В некоторых случаях мы получали следующее сообщение об ошибке:

FATAL ERROR: please install the following Perl modules before executing /usr/bin/mysql_install_db:
Sys::Hostname
Creation of MySQL databse in /var/lib/mysql failed
mysql.service: control process exited, code=exited status=1

 

Читать  Как установить MariaDB на Ubuntu 20.04

Чтобы избежать этой ошибки, просто установите зависимость PERL Sys::Hostnameс помощью следующей команды:

zypper install perl-Sys-Hostname-Long

 

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

zypper install -y mysql-community-server mysql-community-server-client

 

Включите MySQL для запуска при загрузке системы, а затем запустить службу:

systemctl enable mysql.service
systemctl start mysql.service

 

Выполните первоначальную настройку MySQL. Следуйте указаниям на экране следующим образом:

mysql_secure_installation steps:

- Enter current password for root (enter for none):
 - Set root password? [Y/n] Y
 - Remove anonymous users? [Y/n] Y
 - Disallow root login remotely? [Y/n] Y
 - Remove test database and access to it? [Y/n] Y
 - Reload privilege tables now? [Y/n] Y

 

Далее, давайте установим Nginx:

zypper install -y nginx

 

Включите Nginx для запуска при загрузке:

systemctl enable nginx.service

 

В случае ошибки ‘/sbin/insserv failed, exit code 1’, введите следующую команду:

insserv syslog

 

и повторите:

systemctl enable nginx.service

 

Затем запустите Nginx:

systemctl start nginx.service

 

Теперь переходим к http://<yourdomain.ru> или http://<your_ip_address> из вашего браузера. Вы должны увидеть содержимое файла index.html, который хранится в корневом каталоге документов для Nginx (/srv/www/htdocs/).

Теперь мы будем редактировать файл конфигурации Nginx. Убедитесь, что он напоминает ту, которую мы публикуем, за исключением если вы уверены, что вы хотите, чтобы он был скорректирован в соответствии с вашими потребностями. Заметим, что это только первоначальная конфигурация и он может изменяться в зависимости от веб-сайта / приложения.

vim /etc/nginx/nginx.conf

 

worker_processes  2;

    sendfile        on;

    keepalive_timeout  65;

    gzip  on;

    include conf.d/*.conf;

    server {
        listen       80;
        server_name  _;

        #charset koi8-r;

        location / {
            root   /srv/www/htdocs/;
            index index.php index.html index.htm;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /srv/www/htdocs/;
        }

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
            root           /srv/www/htdocs/;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        location ~ /\.ht {
            deny  all;
        }
    }

 

Читать  Как выполнить цикл в хранимой процедуре MySQL

Сохраните и закройте файл. Проверьте конфигурацию Nginx:

nginx -t

 

Если все в порядке, подключите сервис Nginx , перезагружая его с помощью следующей команды:

systemctl reload nginx.service

 

Ваш следующий шаг заключается в установке PHP-FPM. Вы можете сделать это с помощью приведенных ниже команд:

zypper install -y php5-pear php5-gd php5-mbstring php5-mcrypt php5-sockets php5-xmlrpc php5-zlib php5-curl php5-bz2 php5-ftp php5-sysvsem php5-fpm php5-mysql

 

Запустите конфигурацию PHP-FPM путем копирования файла конфигурации:

cp -v /etc/php5/fpm/php-fpm.conf.default /etc/php5/fpm/php-fpm.conf

 

Теперь отредактируйте PHP-fpm.conf и измените значения пользователя и группы из nobody в Nginx . Также включите ведение журнала ошибок. Откройте конфигурационный файл в текстовом редакторе, например vim:

vim /etc/php5/fpm/php-fpm.conf

 

Раскомментируйте и отредактируйте следующую строку, чтобы установить правильный путь к файлу журнала:

error_log = /var/log/php-fpm.log

 

После того, как вы измените значения пользователя и группы, соответствующие строки должны выглядеть следующим образом:

; Unix  user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
;       will be used.
user = nginx
group = nginx

 

У OpenSUSE 13.1 нет php.ini файла для PHP-FPM. Давайте изменим это. Скопируйте файл php.ini из /etc/php5/cli/ в /etc/php5/fpm/, как показано ниже:

cp /etc/php5/cli/php.ini /etc/php5/fpm/

 

Теперь отредактируйте файл php.ini:

vim /etc/php5/fpm/php.ini

 

Измените значение параметра cgi.fix_pathinfo на 0. По умолчанию он будет закомментирован и установлено значение на 1, это практически гарантирует, что PHP попытается выполнить ближайший доступный файл, если запрошенный файл PHP не может быть найден. Сохраните и закройте файл после редактирования.

Читать  Как удалить специальные символы с помощью пользовательской функции в MySQL

Включите службу на запуск при загрузке, а затем запустить его:

systemctl enable php-fpm.service

systemctl start php-fpm.service

 

Затем создайте файл тест PHP:

vim /srv/www/htdocs/index.php

 

 

<?php
 phpinfo();
 ?>

 

Откройте http://<yourdomain.ru> или http://<your_ip_address> в вашем веб-браузере. Если вы внимательно следили, вы должны увидеть стартовую страницу phpinfo.

Вот и все. Мы успешно создали стек LEMP на нашем OpenSUSE VPS.

Как установить стек LEMP (Linux, Nginx, MySQL, PHP) на OpenSUSE

PS . Если вам понравился этот пост, пожалуйста поделитесь им с друзьями в социальных сетях помощью кнопок на левой стороне поста или просто оставьте комментарий ниже. Заранее благодарю.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...
Поделиться в соц. сетях:


0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

**ссылки nofollow

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

Это может быть вам интересно


Рекомендуемое
[gn_button url="https://andreyex.ru/operacionnaya-sistema-opensuse/ustanovka-minimalnoj-servernoj-versii-opensuse-13-2-chast-1/" style="soft" center="yes" icon="icon: arrow-right"]Начало установки На этой странице…

Спасибо!

Теперь редакторы в курсе.