Cómo instalar el acortador de URL Polr en Ubuntu 20.04
Polr es un acortador de URL gratuito y de código abierto escrito en PHP. Proporciona una interfaz simple y fácil de usar para crear y administrar enlaces. Puede alojar su propio acortador de URL, marcar sus URL y obtener control sobre sus datos. Proporciona un montón de características que incluyen una API robusta, reenvío de URL, permisos personalizados, temas y más.
En esta publicación, le mostraremos cómo instalar Polr con Apache y Let’s Encrypt SSL en Ubuntu 20.04.
requisitos previos
- Un servidor con Ubuntu 20.04.
- Un nombre de dominio válido apuntado con la IP de su servidor.
- Una contraseña de root está configurada en el servidor.
Empezando
Primero, actualice los paquetes del sistema a la versión actualizada ejecutando el siguiente comando:
apt-get update -y
Una vez que todos los paquetes estén actualizados, puede continuar con el siguiente paso.
Instale Apache, MariaDB y PHP
Primero, deberá instalar el servidor Apache, la base de datos MariaDB, PHP y otras extensiones de PHP en su servidor. Puede instalarlos todos con el siguiente comando:
apt-get install apache2 mariadb-server php libapache2-mod-php libapache2-mod-wsgi php-gd php-curl php-xml php-xmlrpc php-curl php-imagick php-mbstring php-zip php-intl -y
Una vez que todos los paquetes estén instalados, puede continuar con el siguiente paso.
Crear una base de datos para Polr
Polr usa MariaDB/MySQL como base de datos. Por lo tanto, deberá crear una base de datos y un usuario para Polr.
Primero, inicie sesión en MariaDB con el siguiente comando:
mysql
Una vez que inicie sesión, cree una base de datos y un usuario con el siguiente comando:
MariaDB [(none)]> CREATE DATABASE polrdb; MariaDB [(none)]> GRANT ALL ON polrdb.* TO 'polr' IDENTIFIED BY 'password';
A continuación, elimine los privilegios y salga de MariaDB con el siguiente comando:
MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> EXIT;
Una vez que haya terminado, puede continuar con el siguiente paso.
Instalar compositor
A continuación, deberá instalar Composer en su servidor para instalar las dependencias de PHP necesarias para Polr.
Ejecute el siguiente comando para instalar Composer:
curl -sS https://getcomposer.org/installer | php
Deberías obtener el siguiente resultado:
All settings correct for using Composer Downloading... Composer (version 2.1.3) successfully installed to: /root/composer.phar Use it: php composer.phar
A continuación, mueva el binario de Composer a la ubicación del sistema con el siguiente comando:
mv composer.phar /usr/local/bin/composer
A continuación, verifique la versión de Composer con el siguiente comando:
composer -V
Debería ver el siguiente resultado:
Do not run Composer as root/super user! See https://getcomposer.org/root for details Continue as root/super user [yes]? yes Composer version 2.1.3 2021-06-09 16:31:20
Instalar Polr
A continuación, deberá descargar la última versión de Polr del repositorio de Git. Puedes descargarlo con el siguiente comando:
git clone https://github.com/cydrobolt/polr.git --depth=1 /var/www/html/polr
Una vez que se complete la descarga, cambie el directorio a Polr e instale todas las dependencias requeridas con el siguiente comando:
cd /var/www/html/polr composer install --no-dev -o
A continuación, copie el archivo de entorno de muestra con el siguiente comando: Publicidad
cp .env.setup .env
A continuación, establezca el permiso adecuado para el directorio Polr con el siguiente comando:
chown -R www-data:www-data /var/www/html/polr chmod -R 755 /var/www/html/polr
Una vez que haya terminado, puede continuar con el siguiente paso.
Configurar Apache para Polr
A continuación, deberá crear un archivo de configuración de host virtual de Apache para Polr. Puedes crearlo con el siguiente comando:
nano /etc/apache2/sites-available/polr.conf
Agregue las siguientes líneas:
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html/polr/public ServerName polr.example.com <Directory /var/www/html/polr/public/> Options FollowSymLinks AllowOverride All Order allow,deny allow from all </Directory> ErrorLog /var/log/apache2/polr-error_log CustomLog /var/log/apache2/polr-access_log common </VirtualHost>
Guarde y cierre el archivo, luego habilite el archivo de host virtual de Apache y reescriba el módulo con el siguiente comando:
a2enmod rewrite a2ensite polr.conf
A continuación, reinicie el servicio de Apache para aplicar los cambios:
systemctl restart apache2
Ahora puede verificar el estado del servicio Apache usando el siguiente comando:
systemctl status apache2
Deberías obtener el siguiente resultado:
? apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2021-06-17 12:09:42 UTC; 16s ago Docs: https://httpd.apache.org/docs/2.4/ Process: 27602 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) Main PID: 27617 (apache2) Tasks: 6 (limit: 2353) Memory: 26.6M CGroup: /system.slice/apache2.service ??27617 /usr/sbin/apache2 -k start ??27618 /usr/sbin/apache2 -k start ??27619 /usr/sbin/apache2 -k start ??27620 /usr/sbin/apache2 -k start ??27621 /usr/sbin/apache2 -k start ??27622 /usr/sbin/apache2 -k start Jun 17 12:09:42 ubuntu2004 systemd[1]: Starting The Apache HTTP Server...
Acceder a la interfaz web de Polr
Ahora puede acceder a la interfaz web de Polr mediante la URL http://polr.example.com.
Proporcione el nombre de su base de datos, nombre de usuario, contraseña, configuración de la aplicación, URL de Polr, nombre de usuario del administrador, correo electrónico, contraseña y haga clic en el Instalar botón. Una vez que se haya instalado Polr, debería obtener la siguiente pantalla:
Anuncio publicitario
Haga clic en la página de inicio. Debería ver el panel de control de Polr en la siguiente pantalla:
Asegure Polr con Let’s Encrypt Free SSL
Primero, deberá instalar el cliente Certbot Let’s Encrypt para descargar e instalar el certificado SSL para su dominio.
Puedes instalarlo con el siguiente comando:
apt-get install python3-certbot-apache -y
Una vez instalado, puede ejecutar el siguiente comando para instalar el certificado Let’s Encrypt para su dominio polr.example.com.
certbot --apache -d polr.example.com
Durante la instalación, se le pedirá que proporcione su dirección de correo electrónico y acepte el término del servicio como se muestra a continuación:
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): [email protected] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 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
Luego, escriba 2 y presione Enter para descargar e instalar un certificado SSL gratuito para su dominio. Una vez que la instalación se haya completado con éxito. Deberías obtener el siguiente resultado:
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 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Su sitio web de Polr ahora está protegido con SSL gratuito de Let’s Encrypt. Puede acceder a él usando la URL https://polr.example.com.
Conclusión
En la guía anterior, aprendió cómo instalar Polr con Apache y Let’s Encrypt SSL en el servidor Ubuntu 20.04. Ahora puede alojar su propio acortador de enlaces usando Polr. No dude en preguntarme si tiene alguna pregunta.