Оглавление:

Как сделать экспресс-веб-сервер на Raspberry Pi: 10 шагов
Как сделать экспресс-веб-сервер на Raspberry Pi: 10 шагов

Видео: Как сделать экспресс-веб-сервер на Raspberry Pi: 10 шагов

Видео: Как сделать экспресс-веб-сервер на Raspberry Pi: 10 шагов
Видео: Собираем сетевое хранилище из Raspberry Pi 4! 2024, Ноябрь
Anonim
Как сделать экспресс веб-сервер с Raspberry Pi
Как сделать экспресс веб-сервер с Raspberry Pi

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

Необходимые материалы:

  • Raspberry Pi (мы рекомендуем Raspberry Pi 3 Model B +, так как он имеет встроенный беспроводной адаптер)
  • доступ в Интернет
  • SD-карта (рекомендуется 32 ГБ, минимум 8 ГБ)
  • USB-клавиатура
  • USB-мышь
  • Кабель HDMI
  • Монитор с поддержкой HDMI
  • Доступ к панели конфигурации вашего маршрутизатора (это для переадресации портов)

Шаг 1. Инициализируйте Raspberry Pi

Инициализируйте свой Raspberry Pi
Инициализируйте свой Raspberry Pi

Вставьте карту Micro SD в другую машину и установите на нее ОС Raspbian, используя руководство, которое можно найти на https://www.raspberrypi.org, если вы начинаете со новой. В противном случае убедитесь, что ваша карта Micro SD вставлена в Raspberry Pi.

Шаг 2. Подключите периферийные устройства и войдите в систему

Подключите периферийные устройства и войдите в систему
Подключите периферийные устройства и войдите в систему

Подключите монитор с помощью кабеля HDMI, подключите USB-клавиатуру, подключите USB-мышь и источник питания к Raspberry Pi.

Войдите в Pi, как только он загрузится, используя имя пользователя и пароль по умолчанию, если потребуется. Первоначальное имя пользователя - «пи», а начальный пароль - «малина».

Шаг 3. Подключите Raspberry Pi к Интернету

Если у вас есть доступ к кабелю Ethernet, просто подключите его, и все готово.

Если вы используете Wi-Fi, есть несколько способов сделать это. Это руководство будет следовать подходу окна терминала, чтобы гарантировать, что даже если вы не используете графический интерфейс Raspbian, вы все равно можете подключиться.

  1. Откройте окно терминала, если вы используете графический интерфейс.

    на панели вверху страницы находится терминал

  2. Убедитесь, что ваш Raspberry Pi обнаруживает Wi-Fi

    1. Введите команду `sudo iwlist wlan0 scan`
    2. Найдите свою точку доступа

      1. ESSID - это имя точки доступа
      2. IE - это используемая аутентификация.
  3. Введите команду wpa_cli, чтобы настроить точку доступа.
  4. Введите `add_network`

    1. Это добавит новую сеть в ваш список конфигурации.
    2. Это возвращает одно числовое значение в окне терминала. Первая сеть имеет номер «0», и в этом руководстве предполагается, что вы настраиваете первую сеть. Если это не так, замените номер в командах на тот, который вернула эта команда.
  5. Настроить новую сеть

    1. Введите `set_network 0 ssid" ESSID ".

      1. Замените ESSID названием точки доступа. Убедитесь, что имя точки доступа заключено в кавычки.
      2. Помните, что если ваша команда add_network вернула число, отличное от 0, замените 0 в команде любым числом, которое было возвращено.
    2. Введите `set_network 0 psk" PASSWORD "`

      1. Замените PASSWORD паролем точки доступа. Убедитесь, что пароль точки доступа указан в кавычках.
      2. Помните, что если ваша команда add_network вернула число, отличное от 0, замените 0 в команде тем числом, которое было возвращено.
  6. Подключитесь к сети, введя команду `select_network 0`

    Помните, что если ваша команда add_network вернула число, отличное от 0, замените 0 в команде тем числом, которое было возвращено

  7. Выйдите из приложения, набрав `quit`

Шаг 4: убедитесь, что ваш Pi обновлен

В окне терминала обновите список системных пакетов, набрав sudo apt-get update -y.

Затем обновите все установленные пакеты, набрав sudo apt-get dist-upgrade -y.

Шаг 5: Установите NodeJS на Pi

В окне терминала нам нужно установить NodeJS, который является серверной реализацией JavaScript. Express использует для работы NodeJS. Чтобы установить NodeJS, нам нужно установить его на Pi. Введите `sudo apt-get install nodejs -y`. Убедитесь, что NodeJS установлен, введя `nodejs -v`, чтобы получить номер текущей версии.

После установки NodeJS нам нужно установить диспетчер пакетов узлов. Это менеджер пакетов, который работает с NodeJS для установки модулей, таких как ExpressJS. Введите `sudo apt-get install npm -y`. Убедитесь, что NPM установлен, набрав `npm -v`, чтобы получить номер текущей версии.

Шаг 6. Установите Express и экспресс-генератор

После установки npm введите «sudo npm install express -g». Это загружает ExpressJS в глобальный каталог диспетчера пакетов, поэтому вы можете запускать Express в любой папке.

Затем введите «sudo npm install express-generator -g». Это генератор экспресс-серверов по умолчанию, который отлично подходит для быстрой настройки веб-сервера.

Шаг 7: Запустите экспресс-генератор

Введите `sudo express myapp`. Вы можете заменить «myapp» на любое имя, которое вы хотите назвать своим веб-сервером.

Это создает папку с необходимыми файлами, необходимыми для запуска Express.

Движком представления по умолчанию будет Pug.

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

После завершения работы генератора Express вы можете проверить, работает ли веб-сервер. Введите `cd myapp` run` npm, чтобы войти в созданную папку, затем введите `npm start`, чтобы запустить приложение.

Используя порт по умолчанию, откройте веб-браузер и перейдите по адресу localhost: 3000. Вы должны увидеть «Экспресс, добро пожаловать в экспресс». Вы успешно создали веб-сервер Express.

Шаг 8: Настройте сервер для запуска при загрузке

Отредактируйте файл rc.local. Этот файл запускается каждый раз при загрузке Pi.

Сделайте это, набрав «sudo nano /etc/rc.local»

Перед строкой «exit 0» добавьте следующую строку: «su pi -c‘node /home/pi/myapp/server.js </ dev / null $’»

Замените часть «myapp» в структуре папок тем, как вы назвали свой веб-сервер.

Сохраните файл, нажав CTRL + x.

Шаг 9: (НЕОБЯЗАТЕЛЬНО) перенаправление портов

(ДОПОЛНИТЕЛЬНО) Portforwarding
(ДОПОЛНИТЕЛЬНО) Portforwarding

Это ключевой шаг, если вы хотите, чтобы ваш веб-сервер был доступен для просмотра извне вашей домашней или школьной сети. Этот процесс будет отличаться в зависимости от маршрутизатора, но идея останется прежней. Вы можете найти специальное руководство для вашего маршрутизатора здесь https://portforward.com/router.htm, используя номер модели вашего маршрутизатора. На картинке выше показан пример того, как может выглядеть веб-страница, взятый с portforward.com.

  1. Получите доступ к панели управления роутером
  2. Соберите 2 части информации: ваш внутренний IP-адрес raspberry pi и внешний IP-адрес маршрутизатора.

    1. Внутренний IP-адрес пи можно найти, набрав "sudo ip addr show" в терминале.
    2. Внешний IP-адрес можно найти, набрав «Какой у меня IP-адрес» в Google.
  3. Внутри панели конфигурации вашего маршрутизатора вы хотите настроить правило, используя внутренний IP-адрес raspberry pi.
  4. выберите TCP, и для порта вы можете использовать любой порт, который вы установили на своем сервере узла в экспресс-приложении, мы использовали 1337

Шаг 10: доступ к веб-серверу

Теперь вы можете получить доступ к своему веб-серверу из удаленного места, чтобы попробовать его, просто введите https:// INTERNAL_IP_ADDRESS: 1337, не забудьте заменить «INTERNAL_IP_ADDRESS» на внешний IP-адрес, если вы обращаетесь к веб-серверу из внешней сети., или используя внутренний IP-адрес, если вы обращаетесь к нему из той же сети.

Рекомендуемые: