Малина Pi 3 NGINX: Создайте собственный веб-сервер

Тема в разделе "Raspberry", создана пользователем Транклюкатор, 2 фев 2018.

  1. Транклюкатор

    Транклюкатор Господин ПЖ


    GOOGLE перевод

    Настройка NGINX на малинке

    1. Прежде чем мы начнем с создания веб-сервера NGINX на малине Pi, мы должны сначала убедиться, что наша малина Pi обновлена, выполнив следующие две команды:

    sudo apt-get update
    sudo apt-get upgrade
    2. Мы также должны запустить следующую команду для удаления Apache2, поскольку есть вероятность, что она будет предварительно установлена в вашей системе. Несоблюдение этого требования может привести к сбою установки, поскольку она автоматически запускается и использует порт 80, так как мы намерены использовать NGINX в качестве веб-сервера, мы решили просто удалить его из системы. Вы можете пропустить этот шаг, если вы уверены, что Apache2 еще не установлен на вашем малиновом Pi.

    sudo apt-get remove apache2
    3. С обновленными пакетами и удалением Apache 2 мы можем продолжить работу с учебником. Наконец, установите NGINX на наш малиновый Pi, выполнив следующую команду на вашем малиновом пи:

    sudo apt-get install nginx
    4. Теперь, когда NGINX установлен, мы можем запустить программное обеспечение, просто введите следующую команду в терминал, чтобы запустить веб-сервер на вашем малине Pi:

    sudo systemctl start nginx
    5. Теперь, когда запущен веб-сервер NGINX, мы должны захватить наш локальный IP-адрес. Мы делаем это, чтобы мы могли проверить, работает ли наш веб-сервер из отдельного веб-браузера. Используйте следующую команду, чтобы захватить локальный IP-адрес вашей малины Pi.

    hostname -I
    6. Теперь, когда у нас есть локальный IP-адрес Raspberry Pi, можно открыть адрес в любом веб-браузере. Просто перейдите на свой локальный IP-адрес, который вы захватили с помощью имени хоста -I . В моем случае я бы пошел http://192.168.0.143.

    Как только вы перейдете на адрес, вы увидите что-то вроде ниже, не волнуйтесь, если это показывает страницу Apache, а иногда NGINX не перезаписывает индексную страницу Apache по умолчанию.

    [​IMG]

    Настройка NGINX для PHP
    1. В отличие от Apache, NGINX не будет автоматически настроен для использования с PHP. Вместо этого мы должны внести изменения в свои файлы конфигурации, чтобы загрузить их. Нам также придется использовать PHP-FPM, а не обычный PHP из-за того, как работает NGINX.

    2. Прежде чем мы начнем с настройки PHP для NGINX, нам необходимо его установить. У вас есть выбор между PHP 5 или PHP 7. Мы лично рекомендуем PHP 7, поскольку PHP 5 приближается к концу жизни.

    PHP 5
    2а. Если вы решили просто использовать PHP 5, вы можете просто ввести следующую команду в свой терминал Raspberry Pi.

    sudo apt-get install php5-fpm
    Установка PHP 7
    2b. PHP 7 немного сложнее, чем PHP 5 для тех, кто находится на Raspbian Jessie и раньше. Тем, кто обновился до Raspbian Stretch, будет легко, на самом деле мы рекомендуем людям перейти на Raspbian Stretch, вы можете следовать нашему руководству по обновлению от Raspbian Jessie до Stretch .

    Расбейский стретч и позже
    sudo apt-get install php7.0-fpm
    Raspbian Jessie и ранее
    Для Raspbian Jessie и ранее нам нужно захватить пакеты php7.0 из ветки Stretch, чтобы иметь возможность сделать это, мы добавим Stretch в качестве возможного репозитория, но настроим его так, чтобы он извлекал только пакет из него, когда мы конкретно укажите его.

    а. Начните с редактирования файла списка источников apt, выполнив следующую команду.

    sudo nano /etc/apt/sources.list
    б. Добавьте следующую строку в конец этого файла.

    deb Index of /raspbian stretch main contrib non-free rpi
    После этого мы можем сохранить и выйти, нажав CTRL + X, а затем нажав Y и, наконец, Enter .

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

    sudo nano /etc/apt/preferences
    д. Для этого добавьте следующие строки, это в основном устанавливает пакеты для реализации и приоритет.

    Package: *
    Pin: release n=jessie
    Pin-Priority: 600
    Как только вы закончите, сохраните и выйдите, нажав CTRL + X, затем Y и, наконец, Enter .

    е. С измененным файлом предпочтений и теперь, когда мы добавили новый репозиторий в наш список источников, нам нужно запустить команду apt-get update, чтобы захватить новый репозиторий.

    sudo apt-get update
    е. Наконец, мы можем установить PHP7.0-FPM, используя следующую команду на вашем малиновом Pi.

    sudo apt-get install -t stretch php7.0-fpm
    Изменения в файле конфигурации NGINX
    3. С установленным PHP-FPM мы можем внести необходимые изменения в файл конфигурации NGINX по умолчанию. Чтобы начать редактирование этого файла, выполните следующую команду на вашем малине Pi:

    sudo nano /etc/nginx/sites-enabled/default
    [​IMG]
    4. Внутри этого файла найдите и замените / добавьте следующие строки.

    найти

    index index.html index.htm;
    Заменить

    index index.php index.html index.htm;
    Здесь нам нужно добавить index.php в индексную строку, это в основном говорит NGINX распознавать файл index.php как возможный индекс, добавив его сначала в список, потому что он будет выбран в файле index.html.

    найти

    #location ~ \.php$ {
    # include snippets/fastcgi-php.conf;
    #
    # # With php5-cgi alone:
    # fastcgi_pass 127.0.0.1:9000;
    # # With php5-fpm:
    # fastcgi_pass unix:/var/run/php5-fpm.sock;
    #}

    Заменить для PHP 5

    location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    # With php5-fpm:
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    }
    Заменить для PHP 7

    location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
    }
    Это в основном настраивает NGINX для обработки файлов .php, передавая их через PHP-FPM.
    После этого вы можете сохранить и выйти, нажав CTRL + X, а затем нажав y, а затем введите .

    5. Далее в этом уроке сервера Raspberry Pi Nginx нам нужно сообщить NGINX, чтобы перезагрузить его конфигурацию, выполнив следующую команду.

    sudo systemctl reload nginx
    6. Наконец, давайте проверим настройку PHP, написав очень простой файл index.php в нашем каталоге / var / www / html . Выполните следующую команду для создания и начала редактирования нашего файла index.php.

    sudo nano /var/www/html/index.php
    7. В этот файл добавьте следующую строку кода.

    <?php phpinfo(); ?>
    Как только все это будет сделано, мы сможем сохранить и выйти, нажав CTRL + X,затем Y и, наконец, Enter .

    8. Теперь, как и в предыдущем учебном пособии, вы можете перейти на свой IP-адрес Raspberry Pi, но на этот раз вы увидите страницу со всей информацией о вашей версии PHP и о том, какие модули в данный момент активны. Это хороший признак того, что ваша установка PHP работает правильно.

    Если вы хотите сделать еще один шаг, вы можете посмотреть, как настроить базу данных MYSQL для ее использования. Это довольно прямолинейно и идеально подходит для всех, кто нуждается в хорошем программном обеспечении для баз данных.

    Надеюсь, к настоящему моменту вы успешно настроили свой малиновый Pi с полностью функциональным веб-сервером NGINX с правильной работой PHP.






    Установка PHPMyAdmin
    1. Во-первых, давайте установим сервер mysql на малиновый Pi.

    sudo apt-get install mysql-server
    2. Вам будет предложено ввести пароль для пользователя root. Убедитесь, что вы записываете это, поскольку нам нужно будет использовать это для доступа к серверу MYSQL и подключить к нему PHPMyAdmin.

    [​IMG]

    3. Если вам не будет предложено ввести пароль, вам необходимо ввести следующую команду. Ответьте на все вопросы, чтобы они соответствовали вашим требованиям безопасности.

    sudo mysql_secure_installation
    4. Теперь, если вы хотите получить доступ и начать вносить изменения в базу данных, просто введите следующую команду:

    sudo mysql -u root -p
    5. Теперь он предложит ввести пароль, который мы только что создали.

    6. Теперь вы можете вводить команды MYSQL для создания, изменения и удаления баз данных.

    7. Вы можете выйти из командной строки MYSQL, просто введя quit.

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

    sudo apt-get install python-mysqldb
    Теперь мы закончили установку Raspberry Pi MYSQL, вы можете установить PHPMyAdmin, чтобы у вас был хороший чистый интерфейс для работы.

    [​IMG][​IMG]
    Создание пользователя базы данных MYSQL
    1. По умолчанию PHPMyAdmin запретит вам входить в систему с помощью корневого входа. Вместо этого вам нужно будет создать нового пользователя, если вы хотите создать и получить доступ к datatables в PHPMyAdmin. Для этого сначала войдите под учетной записью root с выбранным вами паролем.

    sudo mysql -u root -p
    2. Теперь запустите следующую команду, заменив имя пользователя по вашему выбору. Также замените пароль на безопасный пароль по вашему выбору.

    GRANT ALL PRIVILEGES ON mydb.* TO 'root'@'localhost' IDENTIFIED BY 'здесь пишем пароль';
    3. Вы можете выйти, введя quit. После этого вы можете перейти к установке PHPMyAdmin.

    Установка малины Pi PHPMyAdmin
    Вы обнаружите, что установка Raspberry Pi PHPMyAdmin очень проста в использовании, это не займет много времени. Если вы еще не установили веб-сервер, вы можете узнать из нашего руководства по установке Apache или нашего руководства по установке NGINX .

    1. Я исхожу из того, что вы уже настроили свой собственный веб-сервер и настроили для него PHP. Обратите внимание, что эти шаги будут немного отличаться, если вы используете Apache или NGINX.

    Теперь давайте установим пакет PHPMyAdmin, вы можете сделать это, введя следующую команду на свой малиновый пи.

    sudo apt-get install phpmyadmin

    2. Теперь он начнет установку. Вам будет представлен экран с запросом типа веб-сервера, с которого вы хотите его запустить. Выберите apache2, даже если вы используете NGINX, так как это не очень важно для нас.

    3. Далее нам нужно настроить PHPMyAdmin для подключения к нашему серверу базы данных SQL. (Тот, который мы установили ранее при установке шага Raspberry Pi MYSQL или веб-сервера). Для этого выберите « Да» в следующем запросе.

    [​IMG]
    4. Инструмент настройки теперь запросит пароль, введите тот, который вы установили для root при настройке SQL Server, это необходимо для phpMyAdmin, чтобы поговорить с SQL Server и управлять вашими базами данных.

    5. Затем он попросит вас установить пароль для самого PHPMyAdmin. Лучше всего установить этот пароль для чего-то другого, чем ваш корневой пароль SQL. Убедитесь, что вы помните об этом, так как это пароль, который вам нужен для доступа к интерфейсу.

    6. После этого мы можем перейти к настройке наших веб-серверов для использования с phpMyAdmin. Эти шаги различаются как для Apache, так и для NGINX, поэтому следите за правильным списком шагов.

    Настройка Apache для phpMyAdmin
    7а. Чтобы начать настройку Apache для использования с phpMyAdmin, введите следующую команду в терминал:

    sudo nano /etc/apache2/apache2.conf
    7b. Теперь в нижней части этого файла введите следующую строку:

    Include /etc/phpmyadmin/apache.conf
    После завершения сохранения и выхода нажмите CTRL + X, а затем y .

    7с. Теперь просто перезапустите службу Apache, введя следующую команду:

    sudo /etc/init.d/apache2 restart

    Настройка NGINX для phpMyAdmin
    7а. Чтобы настроить NGINX для работы с phpMyAdmin, нам нужно просто создать ссылку между папкой phpmyadmin и нашим корневым каталогом html. Для этого нам просто нужно запустить следующие команды:

    sudo ln -s /usr/share/phpmyadmin /var/www/html
    sudo ln -s /usr/share/phpmyadmin/ /var/www/html/phpmyadmin

    И русифицируем локаль:
    Содержимое файла /etc/default/locale

    LC_MESSAGES=ru_RU.UTF-8
    LANG=ru_RU.UTF-8
    LANGUAGE=ru_RU.UTF-8

    8. Теперь вы должны иметь доступ к PHPMyAdmin из браузера. Для проверки перейдите по следующему адресу в своем браузере. (Замените IP на свой IP-адрес. Если у вас его нет, запустите команду hostname -I на вашем Pi)

    http://192.168.1.108/phpmyadmin
    [​IMG]

    9. Если все работает, тогда вам хорошо идти. Вам потребуется войти в систему с использованием пользователя, отличного от root, поскольку это отключено для целей безопасности. Далее в этом уроке я покажу вам, как быстро сделать пользователя базы данных.

    Предполагая, что вы хотите узнать, как настроить WordPress на Raspberry Pi, вы можете найти это в моем учебнике по веб-серверу, связанном с верхней частью этой страницы.

    Если вы хотите включить внешний доступ к PHPMyAdmin или MYSQL, вам необходимо настроить перенаправление портов. Чтобы узнать, как это сделать, ознакомьтесь с моим руководством по переадресации портов . Порты, которые вам нужно переслать, - 80 для PHPMyAdmin, а MYSQL - 3306. Вам также необходимо убедиться, что вы включили внешний доступ к SQL .

    Если вы хотите узнать больше о MYSQL и командах, вы можете использовать для просмотра и редактирования данных, затем я рекомендую перейти на w3schools или в codecademy . У них есть отличные учебники для начинающих, которые помогут вам ускорить использование MYSQL.

    Надеюсь, вы сможете получить как малиновый Pi MYSQL и PHPMyAdmin, работающий в этом учебнике. Если вы столкнулись с чем-то или почувствуете, что я пропустил некоторые важные шаги, пожалуйста, не стесняйтесь оставить комментарий ниже.
     
    Последнее редактирование: 11 апр 2018
  2.  

Поделиться этой страницей