Поиск по сайту:

Как установить Polr Link Shortener на Debian 10


На этой странице

  1. Предпосылки
  2. Начало работы
  3. Установить сервер LAMP
  4. Настройка базы данных MariaDB
  5. Установить Композитор
  6. Установить Polr
  7. Настройка Apache для Polr
  8. Доступ к веб-интерфейсу Polr
  9. Безопасный опрос с помощью Lets Encrypt Free SSL
  10. Заключение

Polr — это бесплатный сокращатель URL-адресов с открытым исходным кодом, который позволяет вам размещать собственный сокращатель ссылок. Он написан на PHP и Lumen и использует MariaDB для хранения своих данных. С Polr вы можете создавать новые ссылки или искать существующие ссылки, не нарушая существующий код.

В этом руководстве мы покажем вам, как установить программное обеспечение Polr Link Shortener на сервер Debian 10.

Предпосылки

  • Сервер под управлением Debian 10.
  • Действительное доменное имя, указанное с IP-адресом вашего сервера. в этом уроке мы будем использовать домен polr.example.com.
  • На вашем сервере настроен пароль root.

Начиная

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

apt-get update -y
apt-get upgrade -y

После обновления системы перезапустите ее, чтобы изменения вступили в силу.

Установить LAMP-сервер

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

apt-get install apache2 mariadb-server libapache2-mod-php php php-pdo php-mysql php-mbstring php-tokenizer php-json php-curl git wget unzip -y

После установки всех пакетов запустите службы Apache и MariaDB и разрешите их запуск после перезагрузки системы.

systemctl start apache2
systemctl start mariadb
systemctl enable apache2
systemctl enable mariadb

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

Настроить базу данных MariaDB

По умолчанию корневой пароль MariaDB не настроен в Debian 10. Поэтому вам нужно сначала установить его.

Для этого войдите в оболочку MariaDB с помощью следующей команды:

mysql

После входа в систему установите корневой пароль MariaDB с помощью следующей команды:

MariaDB [(none)]> SET PASSWORD FOR 'root'@'localhost' = PASSWORD("newpassword");

Затем создайте базу данных и пользователя для Polr с помощью следующей команды:

MariaDB [(none)]> CREATE DATABASE polrdb;
MariaDB [(none)]> GRANT ALL ON polrdb.* TO 'polr' IDENTIFIED BY 'password';

Затем сбросьте привилегии и выйдите из оболочки MariaDB с помощью следующей команды:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

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

Установить Композитор

Далее вам нужно будет установить Composer в вашей системе. Composer — это менеджер зависимостей для PHP, используемый для установки всех зависимостей PHP для вашего проекта.

Сначала загрузите Composer с помощью следующей команды:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

Далее вам нужно будет проверить целостность данных загруженного скрипта, сравнив хэш SHA-384 скрипта с последним хэшем.

Для этого загрузите сигнатуру последней версии установщика Composer из репозитория Git и сохраните ее в переменной с именем HASH:

HASH="$(wget -q -O - https://composer.github.io/installer.sig)"

Затем проверьте сценарий установки с помощью следующей команды:

php -r "if (hash_file('SHA384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

Если хэши совпадают, вы увидите следующий вывод:

Installer verified

Наконец, установите Composer с помощью следующей команды:

php composer-setup.php --install-dir=/usr/local/bin --filename=composer

После завершения установки вы должны увидеть следующий вывод:

All settings correct for using Composer
Downloading...
Composer (version 1.9.2) successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composer

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

Установить Полр

Сначала загрузите последнюю версию Polr из репозитория Git в корневой веб-каталог Apache:

cd /var/www/html
git clone https://github.com/cydrobolt/polr.git --depth=1

После загрузки измените каталог на polr и установите все необходимые зависимости с помощью следующей команды:

cd polr
composer install --no-dev -o

Затем включите веб-установщик, переименовав следующий файл:

mv .env.setup .env

Затем предоставьте соответствующие разрешения каталогу polr, как показано ниже:

chown -R www-data:www-data /var/www/html/polr/
chmod -R 755 /var/www/html/polr/

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

Настройте Apache для Polr

Далее вам нужно будет создать файл конфигурации виртуального хоста Apache для Polr. Вы можете создать его с помощью следующей команды:

nano /etc/apache2/sites-available/polr.conf

Добавьте следующие строки:

<VirtualHost *:80>
     ServerAdmin 
     DocumentRoot /var/www/html/polr/public
     ServerName polr.example.com

     <Directory /var/www/html/polr/public/>
          Options FollowSymlinks
          AllowOverride All
          Require all granted
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/polr_error.log
     CustomLog ${APACHE_LOG_DIR}/polr_access.log combined

</VirtualHost>

Сохраните и закройте файл, когда закончите. Затем включите файл виртуального хоста Apache и перепишите модуль с помощью следующей команды:

a2ensite polr.conf
a2enmod rewrite

Наконец, перезапустите службу Apache, чтобы изменения вступили в силу:

systemctl restart apache2

На данный момент Polr установлен и настроен. Теперь вы можете перейти к следующему шагу.

Доступ к веб-интерфейсу Polr

Теперь откройте веб-браузер и введите URL-адрес http://polr.example.com. Вы будете перенаправлены к мастеру настройки Polr, как показано ниже:

Укажите информацию о своей базе данных, настройках приложения, настройках учетной записи администратора и нажмите кнопку «Установить». После завершения установки вы должны увидеть следующую страницу:

Нажмите на кнопку входа. Вы будете перенаправлены на страницу входа в Polr:

Введите имя пользователя и пароль администратора и нажмите кнопку ВХОД. Вы должны увидеть следующую страницу:

Теперь нажмите ADMIN => DASHBOARD в правом верхнем углу. Вы должны увидеть панель управления Polr на следующей странице:

Безопасный опрос с Lets Encrypt Free SSL

Во-первых, вам нужно будет установить клиент Certbot Lets Encrypt, чтобы загрузить и установить сертификат SSL для вашего домена.

Вы можете установить его с помощью следующей команды:

apt-get install python-certbot-apache -y

После установки вы можете запустить следующую команду, чтобы установить сертификат Lets Encrypt для вашего домена polr.example.com.

certbot --apache -d polr.example.com

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

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): 

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for polr.example.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/polr-le-ssl.conf
Deploying Certificate to VirtualHost /etc/apache2/sites-available/polr-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/polr-le-ssl.conf

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

Затем введите 2 и нажмите Enter, чтобы загрузить и установить бесплатный SSL-сертификат для вашего домена. После успешного завершения установки. Вы должны получить следующий результат:

Enabled Apache rewrite module
Redirecting vhost in /etc/apache2/sites-enabled/polr.conf to ssl vhost in /etc/apache2/sites-available/
polr-le-ssl.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://polr.example.com

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=polr.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Теперь ваш сайт Polr защищен бесплатным SSL от Lets Encrypt. Вы можете получить к нему доступ, используя URL-адрес https://polr.example.com.

Заключение

Поздравляем! вы успешно установили Polr на сервер Debian 10 и защитили его с помощью Lets Encrypt SSL. Теперь вы можете разместить свой собственный сокращатель ссылок с помощью веб-интерфейса Polr. Не стесняйтесь спрашивать меня, если у вас есть какие-либо вопросы.