Comment déployer Tomcat et Nginx sur un serveur Linux
1. Préparation
Vous devez d'abord disposer d'un serveur Linux pouvant être joué, connaître le nom d'utilisateur et le mot de passe, puis vous devez installer les deux sur votre ordinateur Windows Outils pouvant se connecter au serveur Linux, xshell 5 et xftp 5, le tutoriel d'installation n'entrera pas dans les détails, l'image supplémentaire montre comment se connecter au serveur :
L'interface de connexion xshell est comme suit, entrez l'adresse IP de l'hôte et cliquez sur OK, xshell Une fenêtre apparaîtra pour entrer votre nom d'utilisateur et votre mot de passe pour vous connecter avec succès !
Vous pouvez comprendre la différence entre cela et sftp dès que vous le savez !
2. Travaux d'installation et de déploiement
Pour déployer le projet sur le serveur Linux , il est indispensable d'installer jdk et tomcat. Ce qu'il faut souligner ici, c'est que si vous souhaitez déployer plusieurs applications sur un serveur, vous devez avoir son propre tomcat pour chaque application, car sous différentes applications, la configuration de tomcat est définitivement différente. différent. Dans ce cas, vous pouvez installer un répertoire d'installation de Tomcat et le répertoire de travail de Tomcat sous plusieurs applications. Pour les mêmes parties, vous pouvez partager le répertoire d'installation de Tomcat. Ce qui suit explique en détail comment installer Tomcat. et jdk sur votre serveur Créez un nouveau répertoire de cette manière et placez certains fichiers liés au démarrage du projet et à l'accès au déploiement sous ce répertoire. Comme vous pouvez le voir, j'ai placé plusieurs versions de jdk et plusieurs versions de Tomcat sous ce répertoire. le processus de déploiement du projet, quels Tomcat et jdk utiliser peuvent être obtenus via la configuration.
Pour les applications réelles, nous les mettons dans un répertoire d'instance, établissons le nom de chaque application, puis plaçons la guerre correspondante sous le package de répertoire, et les fichiers décompressés, en attendant que Tomcat lise le répertoire pour déployer l'application, comme suit : Modifier la configuration
Nous plaçons également le tomcat sous chaque application dans un répertoire pour une gestion facile, comme indiqué ci-dessous, mais vous devez faire attention à la configuration de chaque tomcat# 🎜🎜#
Sous le répertoire /bin, le fichier start.sh et le fichier stop.sh doivent être modifiés. Tout d'abord, vous devez spécifier le chemin jdk, ce qui est similaire à la configuration des variables d'environnement. La deuxième étape consiste à spécifier le chemin Tomcat du répertoire de travail Tomcat. Vous pouvez remarquer que catalina_home et catalina_base correspondent respectivement au répertoire d'installation et au répertoire de travail de Tomcat. ligne indiquant que le projet démarre en utilisant start.sh sous le répertoire d'installation, mais le projet démarre. Le fichier de configuration Tomcat utilisé est le fichier de configuration configuré par chaque application Tomcat. La même chose est vraie pour stop.sh.
Pour utiliser xshell pour exécuter ./start.sh et ./stop.sh, des autorisations sont requises. S'il n'y a pas d'autorisation, nous pouvons utiliser. xftp Pour modifier les autorisations de l'e-mail start.sh, cochez la case comme indiqué sur l'image.
Sous le répertoire /conf, vous devez faire attention aux configurations modifiées. La première est le fichier server.xml, modifiez le numéro de port correspondant. , et le tomcat de chaque application. Différents numéros de port doivent être modifiés, sinon le port sera occupé lors du démarrage de plusieurs tomcats et ne pourra pas être démarré. Il est préférable de se souvenir du numéro de port de tomcat configuré pour cette application, qui sera utilisé. plus tard lors de l'utilisation de nginx pour le mappage de ports ; #🎜 🎜#
Un autre endroit à modifier est le fichier root.xml dans le répertoire localhost sous le répertoire catalina. utilisé pour spécifier quel Tomcat doit être chargé au démarrage. Exemples de projets dans le répertoire
Les autres répertoires /logs, /temp, /webapps et /work n'ont pas besoin d'être modifiés ; comme le montre ce qui précède, la division des répertoires est très claire et ils sont divisés en répertoires d'installation de services ( jdk, tomcat, nginx, etc.), le répertoire d'instance d'application et le répertoire de déploiement d'application peuvent également être divisés de cette manière lorsque vous utilisez le serveur Linux pour déployer plusieurs projets.
3.nginx implémente le proxy inverse du port 80
Logiquement parlant, à ce stade, nous pouvons transférer le package war de notre propre application vers le répertoire correspondant pour le décompresser, puis l'exécuter dans le répertoire de travail de l'application Tomcat correspondante. /start.sh pour démarrer le projet ! Autant essayer d'abord.
Une fois le projet déployé, nous configurons les hôtes et commençons à accéder. À ce moment-là, nous constaterons que nous devons ajouter le numéro de port Tomcat configuré ci-dessus avant de pouvoir y accéder. Ne pouvons-nous pas ajouter le numéro de port (utiliser celui par défaut). port 80 ) visite ? Comme mentionné ci-dessus, nous avons configuré différents numéros de port pour différents Tomcats. La raison en est qu'un seul numéro de port ne peut être utilisé que par un seul Tomcat. Cela signifie que l'accès au projet doit ajouter des numéros de port pour l'accès. Il est également possible qu'une application utilise le port 80 pour l'accès. C'est à ce moment-là que nginx est utilisé. Après avoir installé nginx, nous pouvons ajouter certaines configurations pour obtenir un proxy inverse et transférer l'accès au port 80 utilisé par différentes applications vers le numéro de port correspondant. Du point de vue de Tomcat, les requêtes externes utilisent toujours le numéro de port configuré par Tomcat, ce qui permet d'obtenir l'effet souhaité. La configuration spécifique est la suivante (bien sûr, nous devons également effectuer le travail de division de répertoire correspondant) :
Le répertoire nginx. est la suivante :
Nous devons uniquement nous soucier du fichier de configuration nginx.conf dans le répertoire /conf. J'ai également ouvert les informations de configuration spécifiques pour que tout le monde puisse les voir. Avez-vous remarqué la dernière ligne "inclure les domaines/". *"? Indique que la configuration n'est pas encore terminée, y compris tous les fichiers de configuration dans le répertoire /domains,
À ce stade, nous pouvons configurer la configuration nginx correspondante de chaque application avec des fichiers avec des noms différents
Voyons ensuite comment le configurer. Écoutez l'accès au nom de domaine sur enchères.center.jd.net:80, puis transférez-le vers le port 1605 de 127.0.0.1 de la machine locale. peut également voir que pour certains états anormaux, tels que http_500, http_502, http_504, etc. seront enregistrés et traités différemment. Généralement, vous pouvez accéder à la page d'accueil du site Web, etc., puis enregistrer le journal après avoir configuré ce fichier de configuration. , il ne faut pas oublier de créer un nouveau répertoire de log, sinon nginx ne pourra pas le trouver. Allez dans le répertoire et une erreur sera signalée au démarrage.
Après avoir terminé ces tâches, nous n'avons pas encore terminé. Nous devons redémarrer nginx. Je n'entrerai pas dans les détails sur la façon de redémarrer. Il existe de nombreuses informations connexes sur Baidu. Si le redémarrage échoue, prenons simplement. une étape difficile et tuez le processus nginx. Utilisez ensuite la commande nginx service start pour démarrer le service nginx.
Une fois ces tâches terminées, pouvons-nous utiliser la méthode familière (sans ajouter de numéro de port) pour y accéder ? Oui, c'est vrai, beaucoup de gens se demandent s'ils doivent à nouveau redémarrer Tomcat pour déployer une application. signifie seulement que vous ne comprenez pas la couche de conversion de routage nginx de la couche réseau. Le nom de domaine que nous visitons effectue d'abord la résolution DNS via les hôtes que nous avons configurés, le convertit en l'adresse IP correspondante, trouve le serveur correspondant à l'adresse IP et transmet l'adresse IP correspondante. le pare-feu du serveur, puis lorsque nous configurons nginx sur le serveur, nginx interceptera d'abord la requête, traitera et distribuera la requête, et enfin frappera le tomcat correspondant (compréhension personnelle, je ne le comprends peut-être pas bien, veuillez ne pas vous plaindre), en ce moment Nous pouvons désormais accéder au nom de domaine et envoyer des demandes en toute confiance ! !
4. Montez sur la fosse
Euh. . pas bon ! ! J'étais ravi et j'ai sauté sur la page d'accueil, mais je n'ai toujours pas pu accéder à l'application spécifiée. Lorsque j'ai essayé d'ajouter le numéro de port, j'ai pu y accéder "miraculeusement". Cela signifie que le nginx que nous avons configuré n'a pas pris effet. est le problème ?
Permettez-moi de parler de mes idées de résolution de problèmes ci-dessous. Tout d'abord, nous devons confirmer que toutes les demandes vont à nginx. À ce stade, les avantages des journaux se reflètent lorsque nous utilisons le port 80 pour accéder à notre application. les journaux. Une, deux fois, trois fois. . Il n'y a pas de journal pour le moment, nous pouvons conclure à peu près que le service nginx n'a pas été utilisé du tout. Nous ne pouvons pas être sûrs que le service nginx n'a pas pris effet sur le serveur. À ce moment-là, j'ai fait une opération audacieuse : désactiver l'accès au service nginx, ou accéder à la page d'accueil du site Web. Le passage à la page d'accueil n'est-il pas configuré via nginx ? En effet, l'entreprise l'a déjà traité au niveau réseau. A cette époque, j'étais très confus. Il s'agissait simplement de diverses tentatives, autant modifier la configuration de Tomcat et configurer l'une des applications sur le port 80. afin qu'il soit toujours accessible. Bientôt, la modification a été terminée. Après l'avoir déployé, j'ai juste attendu que le nom de domaine soit saisi dans la barre d'adresse pour y accéder. Car le service nginx a été fermé, la demande à ce moment-là. doit être envoyé directement à Tomcat. J'y ai accédé une, deux fois et trois fois, miraculeusement, je n'ai pas pu y accéder. ? ? À ce moment-là, j'ai eu un éclair d'inspiration. Il se peut que le pare-feu du serveur ait désactivé le port 80. J'ai rapidement essayé de communiquer localement avec Telnet 192.168.108.37 80. Il s'est avéré que je ne pouvais pas y accéder, ce qui a prouvé que c'était ma supposition. était correct. C'était facile à gérer à ce moment-là. J'avais juste besoin de l'activer dans le pare-feu. L'accès au port 80 est suffisant. Vous trouverez ci-dessous un supplément sur la façon de configurer le pare-feu iptables pour ouvrir le port 80 sous centos.
1. Ouvrez le fichier de configuration d'iptables, le code est le suivant : vi /etc/sysconfig/iptables
2. Utilisez la commande /etc/init.d/iptables status pour vérifier si le port 80 est ouvert Sinon. , il existe deux méthodes de traitement
3. La première façon : Modifier la commande vi /etc/sysconfig/iptables pour ajouter le pare-feu pour ouvrir le port 80. Le code est le suivant :
Copiez le code Le code est le suivant :
-a rh-firewall-1-input -m state --state new -m tcp -p tcp --dport 80 -j accept
4. Le code pour fermer/activer/redémarrer le pare-feu est le suivant : / etc/init.d/iptables stop (#start pour ouvrir, #restart pour redémarrer)
5. La deuxième façon : ajoutez le port via la commande, le code est le suivant :
[root@centos httpd]# /sbin/iptables -i input -p tcp --dport 80 -j accept [root@centos httpd]# /etc/rc.d/init.d/iptables save [root@centos httpd]# /etc/init.d/iptables restart
6. Visualisez l'effet : [ root@centos httpd]# /etc/init.d/iptables status
7. De plus, il est recommandé d'utiliser la première Les deux méthodes sont faciles à utiliser et ont un taux de réussite élevé. Prenez-moi comme exemple. J'utilise la première méthode pour modifier la configuration du pare-feu, le redémarrage échoue. Lorsque j'utilise la deuxième méthode, cela réussit parfaitement
.Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Les principales différences entre Centos et Ubuntu sont: l'origine (Centos provient de Red Hat, pour les entreprises; Ubuntu provient de Debian, pour les particuliers), la gestion des packages (Centos utilise Yum, se concentrant sur la stabilité; Ubuntu utilise APT, pour une fréquence de mise à jour élevée), le cycle de support (CentOS fournit 10 ans de soutien, Ubuntu fournit un large soutien de LT tutoriels et documents), utilisations (Centos est biaisé vers les serveurs, Ubuntu convient aux serveurs et aux ordinateurs de bureau), d'autres différences incluent la simplicité de l'installation (Centos est mince)

Centos sera fermé en 2024 parce que sa distribution en amont, Rhel 8, a été fermée. Cette fermeture affectera le système CentOS 8, l'empêchant de continuer à recevoir des mises à jour. Les utilisateurs doivent planifier la migration et les options recommandées incluent CentOS Stream, Almalinux et Rocky Linux pour garder le système en sécurité et stable.

Docker utilise les fonctionnalités du noyau Linux pour fournir un environnement de fonctionnement d'application efficace et isolé. Son principe de travail est le suivant: 1. Le miroir est utilisé comme modèle en lecture seule, qui contient tout ce dont vous avez besoin pour exécuter l'application; 2. Le Système de fichiers Union (UnionFS) empile plusieurs systèmes de fichiers, ne stockant que les différences, l'économie d'espace et l'accélération; 3. Le démon gère les miroirs et les conteneurs, et le client les utilise pour l'interaction; 4. Les espaces de noms et les CGROUP implémentent l'isolement des conteneurs et les limitations de ressources; 5. Modes de réseau multiples prennent en charge l'interconnexion du conteneur. Ce n'est qu'en comprenant ces concepts principaux que vous pouvez mieux utiliser Docker.

Comment utiliser Docker Desktop? Docker Desktop est un outil pour exécuter des conteneurs Docker sur les machines locales. Les étapes à utiliser incluent: 1. Installer Docker Desktop; 2. Démarrer Docker Desktop; 3. Créer une image Docker (à l'aide de DockerFile); 4. Build Docker Image (en utilisant Docker Build); 5. Exécuter Docker Container (à l'aide de Docker Run).

Étapes pour créer une image docker: écrivez un dockerfile qui contient les instructions de construction. Créez l'image dans le terminal, en utilisant la commande docker build. Marquez l'image et attribuez des noms et des balises à l'aide de la commande docker tag.

Une fois CentOS arrêté, les utilisateurs peuvent prendre les mesures suivantes pour y faire face: sélectionnez une distribution compatible: comme Almalinux, Rocky Linux et CentOS Stream. Migrez vers les distributions commerciales: telles que Red Hat Enterprise Linux, Oracle Linux. Passez à Centos 9 Stream: Rolling Distribution, fournissant les dernières technologies. Sélectionnez d'autres distributions Linux: comme Ubuntu, Debian. Évaluez d'autres options telles que les conteneurs, les machines virtuelles ou les plates-formes cloud.

Étapes d'installation de CentOS: Téléchargez l'image ISO et Burn Bootable Media; démarrer et sélectionner la source d'installation; sélectionnez la langue et la disposition du clavier; configurer le réseau; partitionner le disque dur; définir l'horloge système; créer l'utilisateur racine; sélectionnez le progiciel; démarrer l'installation; Redémarrez et démarrez à partir du disque dur une fois l'installation terminée.

La politique de sauvegarde et de récupération de GitLab dans le système CentOS afin d'assurer la sécurité et la récupérabilité des données, Gitlab on CentOS fournit une variété de méthodes de sauvegarde. Cet article introduira plusieurs méthodes de sauvegarde courantes, paramètres de configuration et processus de récupération en détail pour vous aider à établir une stratégie complète de sauvegarde et de récupération de GitLab. 1. MANUEL BACKUP Utilisez le Gitlab-RakegitLab: Backup: Créer la commande pour exécuter la sauvegarde manuelle. Cette commande sauvegarde des informations clés telles que le référentiel Gitlab, la base de données, les utilisateurs, les groupes d'utilisateurs, les clés et les autorisations. Le fichier de sauvegarde par défaut est stocké dans le répertoire / var / opt / gitlab / backups. Vous pouvez modifier / etc / gitlab
