[LINUX] Aufbau eines Websystems (super einfach) ②: Aufbau eines AP-Servers und grundlegende Bedienung

Zweck

Bestätigen Sie den Aufbau und Betrieb eines Super-Basic-AP-Servers zum Aufbau eines Websystems. (Tomcat wird als AP-Server verwendet.)

Umweltbedingung

--AP-Server - EC2:t2.micro - OS:Red Hat Enterprise Linux 8 (HVM), SSD Volume Type --Disk: Allzweck-SSD (GP2) 10 GB - Tomcat:Apache Tomcat 9 - Java:JDK 1.8

Die Sicherheitsgruppeneinstellungen sind nett.

Bauverfahren

ec2-Melden Sie sich als Benutzer an

Wechseln Sie zum Root-Benutzer
$ sudo su - 

Bestätigung der Existenz des openjdk-Pakets
# yum info java-*-openjdk

Installieren Sie das openjdk-Paket
# yum install -y java-1.8.0-openjdk
Complete!Überprüfen Sie die Ausgabe von.

Bestätigung der Java-Installation
# java -version
openjdk version "1.8.0_232"
OpenJDK Runtime Environment (build 1.8.0_232-b09)
OpenJDK 64-Bit Server VM (build 25.232-b09, mixed mode)

Erstellen eines dedizierten Benutzers (Tomcat)
# useradd -s /sbin/nologin tomcat

Laden Sie die Tomcat-Binärdatei herunter
# curl -O http://ftp.riken.jp/net/apache/tomcat/tomcat-9/v9.0.30/bin/apache-tomcat-9.0.30.tar.gz

Verschieben Sie die Tomcat-Binärdatei in das Installationsverzeichnis
# mv apache-tomcat-9.0.30.tar.gz /opt/

Entpacken Sie die Tomcat-Binärdatei
# cd /opt
# tar zxvf apache-tomcat-9.0.30.tar.gz

Eigentümer der Tomcat-Dateien ändern
# chown -R tomcat:tomcat apache-tomcat-9.0.30

Erstellen Sie eine Registrierungsdatei für die Registrierung des Tomcat-Dienstes
# vi /etc/systemd/system/tomcat.service

========================================
[Unit]
Description=Apache Tomcat 9
After=network.target

[Service]
User=tomcat
Group=tomcat
Type=oneshot
PIDFile=/opt/apache-tomcat-9.0.30/tomcat.pid
RemainAfterExit=yes

ExecStart=/opt/apache-tomcat-9.0.30/bin/startup.sh
ExecStop=/opt/apache-tomcat-9.0.30/bin/shutdown.sh
ExecReStart=/opt/apache-tomcat-9.0.30/bin/shutdown.sh;/opt/apache-tomcat-9.0.30/bin/startup.sh

[Install]
WantedBy=multi-user.target
========================================

Ändern Sie die Berechtigungen der erstellten Datei
# chmod 755 /etc/systemd/system/tomcat.service

Registrierung des Tomcat-Dienstes
# systemctl enable tomcat

Stellen Sie sicher, dass der Tomcat-Dienst beendet ist
# service tomcat status
   Active: inactive (dead)Überprüfen Sie die Ausgabe von.

Starten Sie den Tomcat-Dienst
# service tomcat start
Redirecting to /bin/systemctl start tomcat.service

Überprüfen Sie den Status des Tomcat-Dienstes erneut
# service tomcat status
   Active: active (exited)Überprüfen Sie die Ausgabe von.

Vom Browser zum Webserver "Public DNS:Verbindung zu 8080 "
Apache Tomcat/9.0.Bestätigen Sie, dass 30 Begrüßungsseiten angezeigt werden.

Grundlegende Bedienung des AP-Servers

Erstellen Sie eine einfache Webanwendung mit JSP- und Java-Programmen und führen Sie sie auf dem AP-Server aus. Es ist eine einfache Anwendung, die zwei Zahlen auf dem Webbildschirm eingibt, das Ergebnis der Addition verarbeitet und zurückgibt.

test.jsp


<!DOCTYPE html>
<html>
    <head>
        <title>requestForm</title>
    </head>
    <body>
        <p>Bitte geben Sie den Wert ein</p>

        <%--Senden Sie Text mit der GET-Methode--%>
        <form action="./TestServlet">
            <p>
Bitte gebe eine Nummer ein.
            </p>
            <p>
                <input type="text" name="text1"> + <input type="text" name="text2"> =
            </p>
            <input type="submit" value="Bestätigen">
        </form>
    </body>
</html>

TestServlet.java


import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet("/TestServlet")
public class TestServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
	
    /**
     *Konstrukteur.
     */
    public TestServlet() {
        super();
    }
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    	String inputText1 = "";	//Speichervariable für Text 1
    	String inputText2 = "";	//Speichervariable für Text 2
    	int num1 = 0; //Variablen zum Digitalisieren von Text 1
    	int num2 = 0; //Variablen zum Digitalisieren von Text 2
    	
    	inputText1 = request.getParameter("text1");
    	inputText2 = request.getParameter("text2");
    	
    	num1 = Integer.parseInt(inputText1);
    	num2 = Integer.parseInt(inputText2);
    	
    	int res = num1 + num2;
    	
		//Festlegen des Inhalts, der auf dem Bildschirm ausgegeben werden soll
        //Stellen Sie ein, dass der Ausgabeinhalt HTML ist
        response.setContentType("text/html");
        //UTF den Zeichencode des Ausgabebildschirms-Auf 8 setzen
        response.setCharacterEncoding("UTF-8");

        //Holen Sie sich eine Writer-Klasseninstanz, die auf dem Bildschirm ausgegeben werden soll
        PrintWriter pw = response.getWriter();
        
        //HTML ausgeben
        pw.println("<html>");
        pw.println("<head>");
        pw.println("<title>Berechnungsergebnis</title>");
        pw.println("</head>");
        pw.println("<body>");
        pw.println("<h1>Berechnungsergebnis</h1>");
        pw.println("<p>" + inputText1 + " + " + inputText2 + " = " + res + "</p>");
        pw.println("</body>");
        pw.println("</html>"); 
    }
}

Bereiten Sie TestServlet.java als Jar-Datei einschließlich der Bibliothek vor. (TestServlet.jar)

Umgebungsvorbereitung zum Ausführen der Anwendung

Erstellen Sie die erforderlichen Verzeichnisse
# cd /opt/apache-tomcat-9.0.30/webapps
# mkdir -p test/WEB-INF/lib

web.Erstellen einer XML-Datei
# vi test/WEB-INF/web.xml

========================================
<?xml version="1.0" encoding="UTF-8"?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
                      http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
  version="3.1">

	<servlet>
		<servlet-name>TestServlet</servlet-name>
    	    <servlet-class>TestServlet.TestServlet</servlet-class>
	</servlet>
 
	<servlet-mapping>
		<servlet-name>TestServlet</servlet-name>
		<url-pattern>/*</url-pattern>
	</servlet-mapping>
 
</web-app>
========================================

Anwendung bereitstellen

Platzieren Sie unten TestServlet.jar und test.jsp, damit sie mit der Verzeichnisstruktur übereinstimmen.

/opt/apache-tomcat-9.0.30/webapps/test
test/
├── test.jsp
└── WEB-INF
    ├── lib
    │   └── TestServlet.jar
    └── web.xml

Funktionsprüfung

Starten Sie den Tomcat-Dienst neu
# service tomcat restart
Redirecting to /bin/systemctl start tomcat.service

Vom Browser zum Webserver "Public DNS:8080/test/test.Verbindung zu "jsp"
Stellen Sie sicher, dass die erstellte Webseite angezeigt wird und die Verarbeitung korrekt ausgeführt wird.

nächstes Mal, Web-Systemaufbau (Super Basic) ③: DB-Serveraufbau und Grundbetrieb ist.

Recommended Posts

Aufbau eines Websystems (super einfach) ②: Aufbau eines AP-Servers und grundlegende Bedienung
Kommentar zum Aufbau des Webservers
One Liner Webserver
Ubuntu (18.04.3) Webserverkonstruktion
Aufbau eines Websystems (super einfach) ③: Aufbau eines DB-Servers und grundlegende Bedienung
Frohe Weihnachten Webserver
Aufbau eines Websystems (super einfach) ②: Aufbau eines AP-Servers und grundlegende Bedienung
Kommentar zum Aufbau des Webservers
Aufbau eines Linux-Webservers (Ubuntu & Apache)
Schnellste und stärkste Webserver-Architektur
Webserverkonstruktion mit Apache 2.4 (httpd 2.4.43) + PHP 7.4 unter Linux ―― 4. Sicherheit (chown und firewalld)
Effektive und einfache Webserver-Sicherheitsmaßnahmen "Linux"
Starten Sie einen Webserver mit Python und Flask
CentOS8-Serveraufbau (Netzwerkeröffnung und Paketaktualisierung)
Grundlegende Bedienung von Python Pandas Series und Dataframe (1)