Inhaltsverzeichnis
1. Separate Bereitstellung von Front-End und Back-End
1.1 Diagramm der Bereitstellungsarchitektur
1.2 Vorbereitung
1.3 Bereitstellung starten
1.3.1 Projekt abrufen
1.3.2 Konfiguration ändern
1.3.3 服务端打包
1.3.4 前端打包
1.3.5 安装 Nginx
1.3.6 配置 Nginx
2. 前后端不分部署
Heim Betrieb und Instandhaltung Nginx Lassen Sie uns darüber sprechen, wie Sie Nginx zum Bereitstellen des TienChin-Projekts verwenden

Lassen Sie uns darüber sprechen, wie Sie Nginx zum Bereitstellen des TienChin-Projekts verwenden

Apr 04, 2023 pm 07:46 PM
java nginx 后端

In diesem Artikel lernen Freunde Schritt für Schritt, wie sie das TienChin-Projekt implementieren. Lassen Sie uns dieses Projekt gemeinsam durchführen, um zu sehen, um welche Art von Projekt es sich handelt.

Lassen Sie uns darüber sprechen, wie Sie Nginx zum Bereitstellen des TienChin-Projekts verwenden

Freunde wissen, dass wir bei dieser Art von Projekt mit Front-End- und Back-End-Trennung, wenn wir es tatsächlich bereitstellen, es so bereitstellen können, dass Front-End und Back-End getrennt sind, oder wir kann es so bereitstellen, dass Front-End und Back-End nicht getrennt sind. Als Nächstes werde ich meinen Freunden zwei verschiedene Bereitstellungsmethoden vorstellen.

1. Separate Bereitstellung von Front-End und Back-End

1.1 Diagramm der Bereitstellungsarchitektur

Wenn Front-End und Back-End separat bereitgestellt werden, benötigen wir normalerweise zuerst einen Nginx-Server Ein einfaches Bereitstellungsdiagramm als Referenz:

Lassen Sie uns darüber sprechen, wie Sie Nginx zum Bereitstellen des TienChin-Projekts verwenden

Eine einfache Erklärung lautet:

  1. Der Browser stellt eine Anfrage.
  2. Die Anfrage erreicht zuerst den Nginx-Server und der Nginx-Server verteilt die Anfrage.
  3. Wenn es sich um eine statische Ressourcenanforderung handelt, leitet Nginx diese an den statischen Ressourcenserver weiter. Im Allgemeinen kann Nginx selbst auch als statischer Ressourcenserver fungieren, dh die Daten werden direkt von der eigenen Festplatte von Nginx gelesen.
  4. Wenn es sich um eine dynamische Ressource handelt, leitet Nginx sie an Tomcat weiter. Für uns ist dies unser Spring Boot-Dienst. Wenn Sie nicht so viele Server haben, können wir Nginx und Spring Boot natürlich auf demselben Server bereitstellen . Vorgesetzter.

Okay, das ist unser grobes Diagramm der Bereitstellungsarchitektur, es ist sehr einfach.

1.2 Vorbereitung

Es gibt mehrere Dinge, die wir im Voraus vorbereiten müssen.

Lassen Sie uns zunächst MySQL und Redis auf dem Server installieren. Ich werde nicht näher auf die Installation eingehen, es ist nur ein grundlegender Vorgang.

MySQL empfiehlt die Verwendung von Docker zur Installation, um Ärger zu vermeiden. Wenn Sie Docker nicht verstehen, können Sie im Hintergrund des offiziellen Kontos auf Docker antworten. Außerdem gibt es ein von Brother Song geschriebenes Einführungs-Tutorial. Brother Song hat ein Redis-Tutorial direkt in der vorherigen vhr-Tutorialreihe installiert Sie können im Hintergrund des offiziellen Kontos auf vhr antworten, um die Details anzuzeigen.

Damit sind unsere Vorbereitungen abgeschlossen.

1.3 Bereitstellung starten

1.3.1 Projekt abrufen

Zuerst müssen wir unser Projekt von GitHub abrufen. Sie können es direkt klonen:

Führen Sie Git Clone einfach direkt aus.

Nach dem Herunterziehen gibt es zwei Ordner:

  • tienchin ist der Servercode.
  • tienchin-ui ist der Front-End-Code.

1.3.2 Konfiguration ändern

Zuerst erstellen wir eine Datenbank mit dem Namen Tienchin, was leicht zu sagen ist.

Als nächstes suchen wir die Datei tienchin/sql/tienchin-video_2023-03-13.sql und führen das Skript in der Tienchin-Datenbank aus. tienchin/sql/tienchin-video_2023-03-13.sql 文件,在 tienchin 数据库中执行该脚本。

接下来,我们找到 tienchin/tienchin-admin/src/main/resources/application-druid.yml 文件,在该文件中,根据自己的实际情况,修改数据库连接地址、数据库名称、用户名和密码。

继续打开 tienchin/tienchin-admin/src/main/resources/application.yml 文件,在该文件中配置 Redis 的地址、密码等信息。

另外还有一个非常重要的配置也需要修改,就是在 tienchin/tienchin-admin/src/main/resources/application.yml 文件中,将 server.servlet.context-path 的值改为 /prod-api

1.3.3 服务端打包

接下来我们进行服务端打包。小伙伴们需要在自己电脑上安装好 Maven 并且配置好环境变量,这也是基本操作,我就不啰嗦了。

如果电脑上还没有配置 Maven 的话,建议使用 IDEA 自带的 Maven 插件,就不用额外下载了。IDEA 自带的 Maven 插件在安装目录下的 plugins/maven

Als nächstes finden wir die Datei tienchin/tienchin-admin/src/main/resources/application-druid.yml. Ändern Sie in dieser Datei die Datenbankverbindungsadresse und die Datenbank entsprechend Ihrer tatsächlichen Situation. Name, Benutzername und Passwort.

Öffnen Sie weiterhin die Datei tienchin/tienchin-admin/src/main/resources/application.yml und konfigurieren Sie die Redis-Adresse, das Passwort und andere Informationen in der Datei.

Es gibt auch eine sehr wichtige Konfiguration, die ebenfalls geändert werden muss, nämlich server.servlet.context im <code>tienchin/tienchin-admin/src/main/resources/application.yml zu ändern. code>-Datei Der Wert von -path wird in /prod-api geändert.

1.3.3 Serverseitige Verpackung

🎜Als nächstes führen wir die serverseitige Verpackung durch. Freunde, Sie müssen Maven auf Ihrem Computer installieren und die Umgebungsvariablen konfigurieren. Dies ist ebenfalls ein grundlegender Vorgang, daher werde ich nicht auf Details eingehen. 🎜🎜🎜Wenn Maven auf Ihrem Computer nicht konfiguriert ist, wird empfohlen, das mit IDEA gelieferte Maven-Plug-in zu verwenden, sodass Sie es nicht zusätzlich herunterladen müssen. Das mit IDEA gelieferte Maven-Plug-in befindet sich im Verzeichnis plugins/maven im Installationsverzeichnis. Sie können das bin-Verzeichnis hier direkt für die Umgebungsvariable konfigurieren. 🎜🎜🎜Für die serverseitige Verpackung geben wir das Tienchin-Verzeichnis ein und führen dann den folgenden Code aus: 🎜
mvn package -Dmaven.test.skip=true
Nach dem Login kopieren
🎜Das Sehen des folgenden Codes bedeutet, dass die Kompilierung erfolgreich ist: 🎜🎜🎜🎜

编译成功之后,在 tienchin/tienchin-admin/target 目录下,可以看到一个名为 tienchin-admin.jar 的 jar 文件,这就是我们所需要的服务端代码。

1.3.4 前端打包

接下来进入到 tienchin-ui 目录下,执行如下命令安装依赖(注意,前端需要 NodeJS 至少 14 往上的版本):

npm install
Nach dem Login kopieren

然后再执行如下命令进行编译打包:

npm run build:prod
Nach dem Login kopieren

打包完成后,会生成 dist 目录,里边的文件就是我们所需要的静态资源文件:

这样,前端代码就打包完成了。

1.3.5 安装 Nginx

接下来我们来安装 Nginx,我这里直接下载 Nginx 源码进行编译安装,步骤如下:

  1. 首先安装如下两个编译工具
yum install -y zlib-devel
yum -y install pcre pcre-devel
Nach dem Login kopieren
  1. 下载 Nginx 源码并解压。
wget https://nginx.org/download/nginx-1.22.1.tar.gztar -zxvf nginx-1.22.1.tar.gz
Nach dem Login kopieren
  1. 编译安装

进入到 nginx 解压目录中,分别执行如下命令进行编译安装:

./configuremakemake install
Nach dem Login kopieren

如此之后,我们的 Nginx 就安装好了。

1.3.6 配置 Nginx

接下来我们首先通过命令或者文件上传工具,先把刚刚打包的后端的 tienchin-admin.jar 和前端的 dist 目录上传到服务器上面来。

接下来,我们首先启动服务端这个 tienchin-admin.jar

nohup java -jar tienchin-admin.jar > tienchin.log &
Nach dem Login kopieren

有的小伙伴在服务端部署的时候,会抛出如下异常:

这个是因为服务端缺乏相应的字体,而 Flowable 在自动生成部署图片的时候,需要用到这些字体,所以我们安装需要的字体即可:

yum install fontconfig
fc-cache --force
Nach dem Login kopieren

服务端启动成功之后,我们先用 postman 测试一下登录接口,确保能运行,就说明服务端部署成功:

能成功登录,就说明服务端部署成功。

接下来部署前端。

前端部署很简单,我们只需要将 dist 中的内容拷贝到 nginx 的 html 目录下即可,命令如下:

cp dist/* /usr/local/nginx/html/
Nach dem Login kopieren

接下来执行如下命令启动 nginx:

/usr/local/nginx/sbin/nginx
Nach dem Login kopieren

nginx 启动成功之后,就可以浏览器中访问页面了:

当然,现在还登录不了,因为还缺少 Nginx 的请求转发,现在当我们请求 Nginx 的时候可以看到前端页面,但是服务端的数据请求,Nginx 并不会自动转发到 Spring Boot 上面去,所以还需要我们继续配置 Nginx,Nginx 配置文件的位置在 /usr/local/nginx/conf/nginx.conf,我们增加如下配置:

location /prod-api {
       proxy_pass http://127.0.0.1:8080;
       tcp_nodelay     on;
       proxy_set_header Host            $host;
       proxy_set_header X-Real-IP       $remote_addr;
       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location / {
       root /usr/local/nginx/html/;
       expires 30d;
       try_files $uri $uri/ /index.html;
}
Nach dem Login kopieren

这里有几个配置参数的含义,我给大家稍微解释下:

  • try_files:由于我们的前端 Vue 导航是 history 模式,这个不同于 vhr 的 hash 模式,history 模式会把请求路径发到 Nginx 上去找,很明显 Ngnix 找不到这样的路径,所以 try_files 就是说如果 404 了,就默认展示 index.html 页面即可,然后具体的路由导航由 vue-router 去完成。
  • tcp_nodelay:启动 TCP_NODELAY,其实就是禁用 Nagle 算法,允许小包的发送。对于延时敏感型,同时数据传输量比较小的应用,开启 TCP_NODELAY 选项无疑是一个正确的选择。Nagle 算法是先把数据缓存起来,攒到一块发送。

配置完成后,重启 Nginx:

/usr/local/nginx/sbin/nginx -s reload
Nach dem Login kopieren

好啦,这次重启之后,就可以顺利玩耍啦~

2. 前后端不分部署

前后端不分部署相对就简单一些,不需要 Nginx 了,不过前面 1.3.1-1.3.4 也是需要的。

1.3.4 小节中,我们拿到前端编译打包后的内容后,直接放到 tienchin-admin 模块的 static 静态资源目录下,然后继续将服务端打成 jar 包,将 jar 包上传到服务器并启动即可,启动命令和 1.3.6 小节介绍的 jar 包启动命令一致,这个过程比较简单,涉及到的相关命令前面都有介绍,我就不重复展示了。

最后,对 TienChin 项目感兴趣的小伙伴戳这里:TienChin 项目配套视频来啦

Empfohlenes Tutorial: Nginx-Tutorial

Das obige ist der detaillierte Inhalt vonLassen Sie uns darüber sprechen, wie Sie Nginx zum Bereitstellen des TienChin-Projekts verwenden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So konfigurieren Sie Nginx in Windows So konfigurieren Sie Nginx in Windows Apr 14, 2025 pm 12:57 PM

Wie konfiguriere ich Nginx in Windows? Installieren Sie NGINX und erstellen Sie eine virtuelle Hostkonfiguration. Ändern Sie die Hauptkonfigurationsdatei und geben Sie die Konfiguration der virtuellen Host ein. Starten oder laden Nginx neu. Testen Sie die Konfiguration und sehen Sie sich die Website an. Aktivieren Sie selektiv SSL und konfigurieren Sie SSL -Zertifikate. Stellen Sie die Firewall selektiv fest, damit Port 80 und 443 Verkehr.

Wie kann ich überprüfen, ob Nginx begonnen wird? Wie kann ich überprüfen, ob Nginx begonnen wird? Apr 14, 2025 pm 12:48 PM

Verwenden Sie unter Linux den folgenden Befehl, um zu überprüfen, ob Nginx gestartet wird: SystemCTL -Status Nginx Richter basierend auf der Befehlsausgabe: Wenn "aktiv: aktiv (lief) angezeigt wird, wird Nginx gestartet. Wenn "Active: Inactive (Dead)" angezeigt wird, wird Nginx gestoppt.

So starten Sie Nginx unter Linux So starten Sie Nginx unter Linux Apr 14, 2025 pm 12:51 PM

Schritte zum Starten von Nginx unter Linux: Überprüfen Sie, ob Nginx installiert ist. Verwenden Sie SystemCTL Start Nginx, um den Nginx -Dienst zu starten. Verwenden Sie SystemCTL aktivieren NGINX, um das automatische Start von NGINX beim Systemstart zu aktivieren. Verwenden Sie den SystemCTL -Status NGINX, um zu überprüfen, ob das Startup erfolgreich ist. Besuchen Sie http: // localhost in einem Webbrowser, um die Standard -Begrüßungsseite anzuzeigen.

So lösen Sie Nginx403 -Fehler So lösen Sie Nginx403 -Fehler Apr 14, 2025 pm 12:54 PM

Der Server verfügt nicht über die Berechtigung, auf die angeforderte Ressource zuzugreifen, was zu einem NGINX 403 -Fehler führt. Zu den Lösungen gehören: Überprüfung der Dateiberechtigungen. Überprüfen Sie die Konfiguration .htaccess. Überprüfen Sie die Nginx -Konfiguration. Konfigurieren Sie Selinux -Berechtigungen. Überprüfen Sie die Firewall -Regeln. Fehlerbehebung bei anderen Ursachen wie Browserproblemen, Serverausfällen oder anderen möglichen Fehlern.

So überprüfen Sie, ob Nginx gestartet wird So überprüfen Sie, ob Nginx gestartet wird Apr 14, 2025 pm 01:03 PM

So bestätigen Sie, ob Nginx gestartet wird: 1. Verwenden Sie die Befehlszeile: SystemCTL Status Nginx (Linux/Unix), Netstat -ano | FindStr 80 (Windows); 2. Überprüfen Sie, ob Port 80 geöffnet ist; 3. Überprüfen Sie die Nginx -Startmeldung im Systemprotokoll. 4. Verwenden Sie Tools von Drittanbietern wie Nagios, Zabbix und Icinga.

So lösen Sie das Problem der Nginx Cross-Domain So lösen Sie das Problem der Nginx Cross-Domain Apr 14, 2025 am 10:15 AM

Es gibt zwei Möglichkeiten, das Problem mit dem Cross-Domain-Problem mit dem NGINX-Problem zu lösen: Änderungen der Cross-Domänen-Antwort-Header: Fügen Sie Anweisungen hinzu, um Cross-Domain-Anforderungen zu ermöglichen, zulässigen Methoden und Header anzugeben und die Cache-Zeit festzulegen. Verwenden Sie das CORS-Modul: Aktivieren Sie Module und konfigurieren Sie die CORS-Regeln, um Cross-Domain-Anforderungen, Methoden, Header und Cache-Zeit zu ermöglichen.

So lösen Sie Nginx403 So lösen Sie Nginx403 Apr 14, 2025 am 10:33 AM

Wie fixiere ich Nginx 403 Verbotener Fehler? Überprüfen Sie die Datei- oder Verzeichnisberechtigungen; 2.Htaccess -Datei prüfen; 3. Überprüfen Sie die Konfigurationsdatei der Nginx; 4. Starten Sie Nginx neu. Weitere mögliche Ursachen sind Firewall -Regeln, Selinux -Einstellungen oder Anwendungsprobleme.

So starten Sie den Nginx -Server So starten Sie den Nginx -Server Apr 14, 2025 pm 12:27 PM

Das Starten eines Nginx-Servers erfordert unterschiedliche Schritte gemäß verschiedenen Betriebssystemen: Linux/UNIX-System: Installieren Sie das NGINX-Paket (z. B. mit APT-Get oder Yum). Verwenden Sie SystemCTL, um einen Nginx -Dienst zu starten (z. B. sudo systemctl start nginx). Windows -System: Laden Sie Windows -Binärdateien herunter und installieren Sie sie. Starten Sie Nginx mit der ausführbaren Datei nginx.exe (z. B. nginx.exe -c conf \ nginx.conf). Unabhängig davon, welches Betriebssystem Sie verwenden, können Sie auf die Server -IP zugreifen

See all articles