GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment installer le raccourcisseur d'URL auto-hébergé YOURLS sur CentOS 8

YOURLS est un raccourcisseur d'URL gratuit, open-source et auto-hébergé écrit en PHP. Il est très similaire à TinyURL ou Bitly et vous permet d'exécuter votre propre service de raccourcissement d'URL. Il vous permet également d'ajouter une image de marque à vos URL courtes. Il offre un riche ensemble de fonctionnalités, notamment des liens privés et publics, des mots-clés d'URL personnalisés, des rapports de clics historiques, une interface Ajaxed, la prise en charge de Jsonp et bien d'autres.

Dans ce tutoriel, nous allons vous montrer comment installer YOURLS sur CentOS 8 avec Let's Encrypt SSL.

Prérequis

  • Un serveur exécutant CentOS 8.
  • Un nom de domaine valide pointé vers l'adresse IP de votre serveur.
  • Un mot de passe root est configuré sur le serveur.

Installer le serveur LEMP

Tout d'abord, vous devrez installer Nginx, MariaDB, PHP et les extensions PHP requises sur votre serveur. Vous pouvez tous les installer avec la commande suivante :

dnf installer nginx mariadb-server php php-fpm php-json php-common php-mysqlnd php-zip php-gd php-mbstring php-curl php-xml php-pear php-bcmath git unzip wget -y 

Une fois tous les packages installés, éditez le fichier de configuration PHP-FPM /etc/php-fpm.d/www.conf et changez l'utilisateur d'apache à nginx :

nano /etc/php-fpm.d/www.conf

Modifiez les lignes suivantes :

utilisateur =nginxgroup =nginx

Enregistrez et fermez le fichier puis démarrez les services Nginx, MariaDB, PHP-FPM et autorisez-les à démarrer au redémarrage du système avec la commande suivante :

systemctl start nginx
systemctl enable nginx
systemctl start mariadb
systemctl enable mariadb
systemctl start php-fpm
systemctl enable php-fpm

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Créer une base de données pour YOURLS

Ensuite, vous devrez créer une base de données et un utilisateur pour YOURLS. Tout d'abord, connectez-vous à MariaDB avec la commande suivante :

mysql

Une fois connecté, créez une base de données et un utilisateur avec la commande suivante :

MariaDB [(none)]> CREATE DATABASE yourlsdb ;
MariaDB [(none)]> ACCORDE TOUS LES PRIVILÈGES SUR yourlsdb.* TO 'yourlsuser'@'localhost' IDENTIFIED BY 'password' ;

Ensuite, videz les privilèges et quittez MariaDB avec la commande suivante :

MariaDB [(aucun)]> PRIVILÈGES FLUSH ;
MariaDB [(aucun)]> \q

À ce stade, MariaDB est installé et configuré.

Installez VÔTRE

Tout d'abord, changez le répertoire en racine Web Nginx et téléchargez la dernière version de YOURLS avec la commande suivante :

cd /var/www/html
clone git https://github.com/YOURLS/YOURLS.git

Ensuite, renommez l'exemple de fichier de configuration avec la commande suivante :

cd VOTRELS/user/
cp config-sample.php config.php

Ensuite, éditez le fichier config.php et définissez les paramètres de votre base de données :

nanoconfig.php

Modifiez les lignes suivantes :

/** Nom d'utilisateur de la base de données MySQL */define( 'YOURLS_DB_USER', 'yourlsuser' ); /** Mot de passe de la base de données MySQL */define( 'YOURLS_DB_PASS', 'password' ); /** Le nom de la base de données pour YOURLS ** Utilisez uniquement des lettres minuscules [a-z], des chiffres [0-9] et des traits de soulignement [_] */define( 'YOURLS_DB_NAME', 'yourlsdb' ); /** Nom d'hôte MySQL. ** Si vous utilisez un port non standard, spécifiez-le comme 'hostname:port', par ex. 'localhost:9999' ou '127.0.0.1:666' */define( 'YOURLS_DB_HOST', 'localhost' ); /** Préfixe des tables MySQL ** YOURLS créera des tables en utilisant ce préfixe (par exemple `votre_url`, `votre_options`, ...) ** Utilisez des lettres minuscules [a-z], des chiffres [0-9] et des traits de soulignement [_] seulement */define( 'YOURLS_DB_PREFIX', 'yourls_' ); define( 'VOTRE_SITE', 'http://votre.exemple.com' );$votre_utilisateur_motsdepasse =array( 'admin' => 'votremotdepasse',

Enregistrez et fermez le fichier lorsque vous avez terminé. Créez ensuite un fichier .htaccess avec la commande suivante :

nano /var/www/html/VOTRE/.htaccess

Ajoutez les lignes suivantes :

RewriteEngine OnRewriteBase /RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule ^.*$ /yourls-loader.php [L]

Enregistrez et fermez le fichier, puis attribuez les autorisations et la propriété appropriées avec la commande suivante :

chown -R nginx:nginx /var/www/html/VOTRE
chmod -R 775 /var/www/html/VOTRE

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Configurer Nginx pour VOTRELS

Ensuite, créez un nouveau fichier de configuration d'hôte virtuel Nginx pour YOURLS :

nano /etc/nginx/conf.d/yourls.conf

Ajoutez les lignes suivantes :

serveur { écouter 80 ; nom_serveur votrels.exemple.com ; racine /var/www/html/YOURLS ; index index.php index.html index.htm; location / { try_files $uri $uri/ /yourls-loader.php$is_args$args; } emplacement ~ \.php$ { inclure fastcgi.conf; fastcgi_index index.php ; fastcgi_pass unix:/run/php-fpm/www.sock; }}

Enregistrez et fermez le fichier puis redémarrez le service Nginx et PHP-FPM avec la commande suivante :

systemctl redémarrer nginx
systemctl redémarrer php-fpm

Vous pouvez également vérifier l'état du Nginx avec la commande suivante :

statut systemctl nginx

Vous devriez obtenir le résultat suivant :

 ? nginx.service - Le serveur HTTP et proxy inverse nginx Chargé :chargé (/usr/lib/systemd/system/nginx.service ; désactivé ; préréglage fournisseur :désactivé) Drop-In :/usr/lib/systemd/system/nginx. service.d ??php-fpm.conf Actif :actif (en cours d'exécution) depuis mar 2020-10-20 09:37:40 EDT ; Il y a 5min Processus :12864 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS) Processus :12862 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS) Processus :12860 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS) PID principal :12871 (nginx) Tâches :3 (limite :12523) Mémoire :5,5 M CGroup :/ system.slice/nginx.service ??12871 nginx :processus maître /usr/sbin/nginx ??12872 nginx :processus de travail ??12873 nginx :processus de travailOct 20 09:37:40 centos systemd[1] :Arrêté Le nginx HTTP et serveur proxy inverse.Oct 20 09:37:40 centos systemd[1] :Démarrage du serveur HTTP nginx et proxy inverse...Oct 20 09:37:40 centos nginx[12862] :nginx :le fichier de configuration /etc/ La syntaxe nginx/nginx.conf est okOct 20 09:37:40 centos nginx[12862] :nginx :le test du fichier de configuration /etc/nginx/nginx.conf est réussiOct 20 09:37:40 centos systemd[1] :Démarrage de nginx HTTP et serveur proxy inverse.

Configurer SELinux et le pare-feu

Par défaut, SELinux est activé dans CentOS 8. Vous devrez donc le configurer pour votre site Web YOURLS.

Vous pouvez configurer le SELinux avec la commande suivante :

setsebool httpd_can_network_connect on -P
chcon -R -u system_u -t httpd_sys_rw_content_t -r object_r /var/www/html/YOURLS

Ensuite, autorisez les ports 80 et 443 à traverser le pare-feu avec la commande suivante :

firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Accéder à VÔTRE

Maintenant, ouvrez votre navigateur Web et accédez à YOURLS à l'aide de l'URL http://yourls.example.com/admin. Vous devriez voir la page suivante :

Cliquez sur Installer YOURLS bouton. Vous devriez voir la page suivante :

cliquez sur la "page d'administration de VOTRE ”. Vous devriez voir la page de connexion de VOTRELS :

Fournissez votre nom d'utilisateur et votre mot de passe d'administrateur que vous avez définis dans le fichier config.php puis cliquez sur Connexion bouton. Vous devriez voir le tableau de bord YOURLS sur la page suivante :

Sécurisez VÔTRES avec Let's Encrypt SSL

Ensuite, vous devrez installer l'utilitaire Certbot sur votre système pour télécharger et installer Let's Encrypt SSL pour votre site Web YOURLS.

Vous pouvez installer le client Certbot avec la commande suivante :

wget https://dl.eff.org/certbot-auto
mv certbot-auto /usr/local/bin/certbot-auto
chown root /usr/local/bin/certbot- auto
chmod 0755 /usr/local/bin/certbot-auto

Ensuite, obtenez et installez un certificat SSL pour votre site Web YOURLS avec la commande suivante :

certbot-auto --nginx -d votrels.exemple.com

La commande ci-dessus installera d'abord toutes les dépendances requises sur votre serveur. Une fois installé, il vous sera demandé de fournir une adresse e-mail et d'accepter les conditions d'utilisation comme indiqué ci-dessous :

Enregistrement du journal de débogage dans /var/log/letsencrypt/letsencrypt.logPlugins sélectionnés :authentificateur nginx, installateur nginxEntrez l'adresse e-mail (utilisée pour les renouvellements urgents et les avis de sécurité) (Entrez 'c' pour annuler) :[email protected]- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Veuillez lire les conditions d'utilisation sur https://letsencrypt.org /documents/LE-SA-v1.2-15-novembre-2017.pdf. Vous devez accepter afin de vous inscrire auprès du serveur ACME sur https://acme-v02.api.letsencrypt.org/directory- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(A)gree/(C)ancel:A- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Seriez-vous prêt à partager votre adresse e-mail avec l'Electronic FrontierFoundation, un partenaire fondateur du projet Let's Encrypt et l'organisation à but non lucratif qui développe Certbot ? Nous aimerions vous envoyer un e-mail sur notre travail de cryptage du Web, les actualités de l'EFF, les campagnes et les moyens de soutenir la liberté numérique.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(O)oui/(N)o :OBtention d'un nouveau certificatRéalisation des défis suivants :Challenge http-01 pour votrels.exemple.comEn attente de vérification...Nettoyage relever des défisDéploiement d'un certificat sur VirtualHost /etc/nginx/conf.d/yourls.conf

Sélectionnez si vous souhaitez rediriger le trafic HTTP vers HTTPS ou non, comme indiqué ci-dessous :

Veuillez choisir de rediriger ou non le trafic HTTP vers HTTPS, en supprimant l'accès HTTP.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -1 :Pas de redirection - N'apporte aucune autre modification à la configuration du serveur Web.2 :Redirection - Redirige toutes les requêtes vers un accès HTTPS sécurisé. Choisissez ceci pour les nouveaux sites ou si vous êtes sûr que votre site fonctionne sur HTTPS. Vous pouvez annuler cette modification en modifiant la configuration de votre serveur Web.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Sélectionnez le numéro approprié [1-2] puis [enter] (appuyez sur 'c' pour annuler) :2

Tapez 2 et appuyez sur Entrée pour continuer. Une fois l'installation terminée avec succès, vous devriez obtenir le résultat suivant :

Redirection de tout le trafic sur le port 80 vers SSL dans /etc/nginx/conf.d/yourls.conf- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Toutes nos félicitations! Vous avez activé avec succès https://yourls.example.comVous devriez tester votre configuration sur :https://www.ssllabs.com/ssltest/analyze.html?d=yourls.example.com- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - REMARQUES IMPORTANTES :- Félicitations ! Votre certificat et votre chaîne ont été enregistrés sur :/etc/letsencrypt/live/yourls.example.com/fullchain.pem Votre fichier de clé a été enregistré sur :/etc/letsencrypt/live/yourls.example.com/privkey.pem Votre cert expirera le 2020-06-11. Pour obtenir une nouvelle version ou une version modifiée de ce certificat à l'avenir, exécutez simplement certbot-auto à nouveau avec l'option "certonly". Pour renouveler *tous* vos certificats de manière non interactive, exécutez "certbot-auto refresh" - Si vous aimez Certbot, veuillez envisager de soutenir notre travail en :faisant un don à ISRG / Let's Encrypt :https://letsencrypt.org/donate FEP :https://eff.org/donate-le

Vous pouvez désormais accéder au site Web de YOURLS en toute sécurité à l'aide de l'URL https://yourls.example.com.

Conclusion

Toutes nos félicitations! vous avez installé avec succès YOURLS avec Nginx et Let's Encrypt SSL sur CentOS 8. Vous pouvez désormais héberger facilement votre propre raccourcisseur d'URL avec YOURLS. N'hésitez pas à me demander si vous avez des questions.


Cent OS
  1. Comment installer MongoDB sur CentOS 8

  2. Comment installer Nginx sur CentOS 7

  3. Comment installer XWiki sur CentOS 7

  4. Comment installer le raccourcisseur d'URL YOURLS sur Ubuntu 20.04

  5. Installer Nginx sur CentOS 6

Comment installer le raccourcisseur d'URL Polr sur Ubuntu 20.04

Comment installer XAMPP sur CentOS 8

Comment installer Nginx sur CentOS

Comment installer Yourls dans CentOS 8

Comment installer Nginx sur CentOS 6

Comment installer Nginx sur CentOS 7 ?