J'ai construit un serveur Web pour étudier le serveur et j'ai essayé d'exécuter l'application Java.
Après enquête, il semble que vous pouvez le déplacer pour le moment en procédant comme suit.
--Construction de l'environnement d'exécution Java --Préparation du conteneur de servlet --Construire un serveur Web
Installez le JDK pour exécuter l'exécution Java sur le serveur. Le site suivant était facile à comprendre. ■ Référence: J'ai mis Tomcat 9 dans CentOS 7
Exécutez la commande suivante sur le serveur à installer (JDK8).
# yum install java-1.8.0-openjdk-devel.x86_64
(Si vous souhaitez rechercher un autre JDK, exécutez la commande suivante.)
# yum search openjdk
Confirmez qu'il est installé avec la commande suivante.
# java -version
Il est OK si la sortie suivante est sortie.
openjdk version "1.8.0_252"
OpenJDK Runtime Environment (build 1.8.0_252-b09)
OpenJDK 64-Bit Server VM (build 25.252-b09, mixed mode)
Installez tomcat, un conteneur de servlets, pour exécuter les servlets Java (programmes Java qui s'exécutent sur le serveur). J'entends souvent tomcat, mais je l'ai utilisé sans le savoir ... Tout d'abord, ajoutez un utilisateur pour exécuter Tomcat (nom d'utilisateur: tomcat).
# useradd -s /sbin/nologin tomcat
■ Référence: Comment exécuter des commandes en tant qu'utilisateur ne pouvant pas se connecter + bonus
Ensuite, téléchargez le fichier sur le serveur pour l'installation de Tomcat.
# curl -O https://ftp.jaist.ac.jp/pub/apache/tomcat/tomcat-9/v9.0.37/bin/apache-tomcat-9.0.37.tar.gz
Décompressez le fichier téléchargé avec la commande suivante.
# tar -xzvf apache-tomcat-9.0.37.tar.gz
Accédez à / usr / local / tomcat avec la commande suivante.
# mv apache-tomcat-9.0.37 /usr/local/tomcat
Propriétaire de l'utilisateur: remplacez le propriétaire du groupe par l'utilisateur "tomcat" créé précédemment avec la commande suivante
# chown -R tomcat:tomcat /usr/local/tomcat
Créez un fichier d'unité systemd avec la commande suivante pour que Tomcat soit reconnu comme un service exécutable par le serveur.
■ Référence: Introduction à Systemd
# vi /etc/systemd/system/tomcat.service
Écrivez le contenu suivant dans le fichier créé et enregistrez-le. Pour être honnête, je ne comprends pas vraiment le contenu. Comprenant que nous déclarons que nous allons créer un tel service.
[Unit]
Description=Apache Tomcat 9
After=syslog.target network.target
[Service]
User=tomcat
Group=tomcat
Type=oneshot
PIDFile=/usr/local/tomcat/tomcat.pid
RemainAfterExit=yes
ExecStart=/usr/local/tomcat/bin/startup.sh
ExecStop=/usr/local/tomcat/bin/shutdown.sh
ExecReStart=/usr/local/tomcat/bin/shutdown.sh;/usr/local/tomcat/bin/startup.sh
[Install]
WantedBy=multi-user.target
En outre, définissez les autorisations de lecture, d'écriture et d'exécution pour le fichier créé.
# chmod 755 /etc/systemd/system/tomcat.service
■ Référence: [chmod] autorisations de fichier / répertoire de changement de commande (attributs d'autorisation)
Définir le démarrage automatique et activer le service
# systemctl enable tomcat
Created symlink from /etc/systemd/system/multi-user.target.wants/tomcat.service to /etc/systemd/system/tomcat.service.
# systemctl start tomcat
Démarrez Tomcat.
Accédez à l'URL suivante et OK lorsque l'écran par défaut de Tomcat apparaît.
[http: // adresse IP du serveur: 8080 /](http: // [adresse IP du serveur]: 8080 /)
Il semble qu'il vaut mieux installer le serveur HTTP Apatch, Il semble que Tomcat dispose également d'une fonction Web Server, alors utilisez-la (donc ne l'installez pas en particulier). Ensuite, j'ai pensé que je n'avais pas besoin d'Apache HttpServer en premier lieu, mais le serveur Web de tomcat semble être un bonus, et compte tenu des performances, il semble préférable de l'avoir.
■ Référence: [Session d'étude interne] Apache et Tomcat (2017/03/09)
Il semble que l'application java devrait être placée dans les webapps (/ usr / local / tomcat / webapps /) directement sous le Tomcat installé. Je n'étais pas au courant de ce domaine non plus, donc je ne l'ai pas vraiment compris. Le site suivant était très facile à comprendre.
■ Référence: Hello World with Tomcat
Pour le moment, créez un dossier de projet avec la commande suivante
# mkdir /usr/local/tomcat/webapps/javaproject
Après cela, créez un fichier de classe et web.xml. Créez un répertoire de classes avec la commande suivante.
# mkdir /usr/local/tomcat/webapps/javaproject/WEB-INF/classes
Créez un fichier source Java avec la commande suivante.
# vi /usr/local/tomcat/webapps/javaproject/WEB-INF/classes/HelloWorld.java
Modifiez et enregistrez comme suit.
HelloWorld.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorld extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response) throws IOException, ServletException {
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("HelloWorld");
out.println("</html>");
out.close();
}
}
Compilez avec la commande suivante.
# cd /usr/local/tomcat/webapps/javaproject/WEB-INF/classes/
# javac -classpath /usr/local/tomcat/lib/servlet-api.jar HelloWorld.java
Hello World. Dans le même répertoire. OK si vous avez un cours. Après cela, créez web.xml et liez l'URL et le servlet. Créez web.xml avec la commande suivante.
# vi /usr/local/tomcat/webapps/javaproject/WEB-INF/web.xml
Modifiez et enregistrez comme suit
web.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<servlet>
<servlet-name>hello</servlet-name>
<servlet-class>HelloWorld</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>
hello
</servlet-name>
<url-pattern>
/servlet/hello
</url-pattern>
</servlet-mapping>
</web-app>
Il approche enfin de la fin. Ça a été long parce que j'en étais accro ... Redémarrez tomcat avec la commande suivante.
# systemctl restart tomcat
Accédez à l'URL suivante et lorsque Hello World est affiché, c'est OK!
[http: // adresse IP du serveur: 8080 / javaproject / servlet / hello](http: // [adresse IP du serveur]: 8080 / javaproject / servlet / hello)
Recommended Posts