Raspberry Pi:Настройка/Удалённый доступ/Веб-сервер/NGINX

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Настройка на Raspberry Pi веб-сервера NGNIX[1]

NGNIX (означает «engine x») — это популярное и простое веб-серверное приложение, которое можно установить на Raspberry Pi и с его помощью обслуживать работу веб-страниц.

Как и Apache, NGNIX умеет выводить HTML-файлы (через HTTP), а если подключить к нему дополнительные модули, то он сможет выводить и динамические веб-страницы, используя для этого скриптовые языки вроде PHP.

Установка NGNIX

Сначала устанавливаем пакет ngnix. Для этого вписываем в терминал следующую команду:

sudo apt-get install nginx

Теперь запускаем сервер:

sudo /etc/init.d/nginx start

Проверка веб-сервера

Будучи установленным, NGNIX сразу помещает в веб-директорию тестовый HTML-файл. Веб-сервер выводит эту дефолтную страницу, если зайти в браузере на http://localhost/ (будучи на самой Pi) или http://192.168.1.10 (будучи на другом компьютере из этой сети). Вместо 192.168.1.10 нужно подставить IP-адрес конкретно вашей Pi, а чтобы узнать его, впишите в терминал команду

hostname -I

(или воспользуйтесь одним из методов отсюда).

Открыв эту дефолтную веб-страницу, вы должны увидеть следующее:

Изменение дефолтной веб-страницы

По умолчанию NGNIX помещает свою тестовую веб-страницу в директорию /usr/share/nginx/www, находящуюся в файловой системе Raspbian. Пройдите туда и отредактируйте его (или замените), как вам нужно.

Установка PHP (дополнительно)

sudo apt-get install php5-fpm

Подключение PHP

cd /etc/nginx
sudo nano sites-enabled/default

Теперь находим строчку...

index index.html index.htm;

Номер этой строчки — 25-ый или около того (чтобы увидеть номера строчек, будучи в nano, нажмите  Ctrl + C ).

Теперь добавляем после index фрагмент index.php. Это должно выглядеть примерно так:

index index.php index.html index.htm;

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

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    # location ~ \.php$ {

Редактируем этот фрагмент, убрав у него символы #:

location ~ \.php$ {
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    fastcgi_index index.php;
    include fastcgi.conf;
}

Должно получиться вот так:

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
        #       # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
        #
        #       # With php5-cgi alone:
        #       fastcgi_pass 127.0.0.1:9000;
                # With php5-fpm:
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                include fastcgi.conf;
        }

Перезагружаем конфигурационный файл:

sudo /etc/init.d/nginx reload

Проверка PHP

Переименовываем index.html в index.php:

cd /usr/share/nginx/www/
sudo mv index.html index.php

Открываем в текстовом редакторе index.php:

sudo nano index.php

Удаляем старый контент и добавляем немного динамического PHP-контента:

<?php echo phpinfo(); ?>

Сохраняем файл и обновляем браузер. В результате вы должны увидеть PHP-версию страницы, логотип и текущие конфигурационные настройки.

См.также

Внешние ссылки