Server 13 ,CentOS 上使用 Nginx 部署多個前端項目完整指南( 支持多端口與腳本自動化 )

目錄

????????前言
一、實際背景
1.1 并行部署
1.2 接口代理
1.3 刷新問題
二、安裝腳本
2.1 創建腳本
2.2 不同系統
2.3?執行完成
三、配置文件
3.1 配置文件
3.2 目錄結構
3.3 重新啟動
四、驗證訪問
五、問題排查
5.1 訪問 404
5.2 接口 502
六、本文總結
6.1 清理舊環境
6.2 防火墻策略
6.3 實現的成果
七、更多操作

前言

首先,CentOSUbuntu都是基于Linux內核的開源發行版,但它們在起源生態應用場景上存在顯著差異。了解它們的“血緣”關系有助于選擇合適的系統進行Nginx部署。

CentOS(Community Enterprise Operating System)于2004年3月首次發行,是RHEL的免費克隆版,通過重新編譯RHEL源代碼去除品牌標識而成。RHELRed Hat公司開發,面向企業。CentOS 7.9.2009作為CentOS 7系列的最終版本,于2020年9月發布,支持到2024年6月,但因Red Hat策略變更,轉向CentOS Stream作為滾動更新版。

Ubuntu2004年10月發行,由Canonical公司維護,基于Debian GNU/LinuxDebian由社區驅動,強調穩定,Ubuntu在其基礎上優化了用戶體驗,每6個月發布新版,每2年一個LTS(Long Term Support)版,如Ubuntu 24.04 LTS支持到2029年

關系上,CentOSUbuntu無直接血緣,但同屬Linux家族CentOS繼承RHEL的企業級穩定性,適合生產服務器Ubuntu繼承Debian的包管理,適合桌面云環境

然而在日常的前端項目部署過程中,許多團隊會面臨以下典型問題:

  1. 同一臺服務器需要部署多個前端項目,且每個項目獨立運行,互不干擾。

  2. 后端接口需要代理,前后端分離部署后,需要通過 Nginx 將請求轉發到不同的后端服務。

  3. 端口管理混亂:如果部署多個項目在同一個端口,維護會復雜;如果不規劃端口,防火墻管理將變得困難。

  4. 前端項目刷新 404 問題:Vue、React 等 SPA 項目刷新時常常出現 404 錯誤。

本文將詳細介紹如何通過 Nginx 在 CentOS 服務器上,為不同前端項目分配獨立端口進行部署,并實現以下目標:

  1. 不同前端項目獨立端口管理,互不干擾;

  2. 每個項目對應獨立后端接口代理,支持前后端分離架構;

  3. 解決 SPA 項目刷新 404 問題

  4. 提供 自動化安裝腳本,簡化部署流程;

  5. 涵蓋從 安裝、配置、排錯到防火墻管理 的完整流程。

一、實際背景

部署背景與需求分析

1.1 并行部署

多個項目并行部署:假設我們的服務器上需要部署以下三個前端項目:

項目名稱本地路徑訪問端口訪問地址
Dlxj_Csj/usr/local/nginx/html/Dlxj_Csj/80http://192.168.110.125/
Hs_Csj/usr/local/nginx/html/Hs_Csj/81http://192.168.110.125:81/
Yk_Csj/usr/local/nginx/html/Yk_Csj/82http://192.168.110.125:82/

這樣每個項目都擁有獨立的訪問地址,不會相互影響,便于維護和擴展。

1.2 接口代理

后端接口代理:三個前端項目的接口訪問需求不同,因此需要配置不同的后端地址:

項目名稱接口路徑后端服務地址
Dlxj_Csj/prod-api/http://192.168.110.44:9013/
Hs_Csj/prod-api/http://192.168.110.97:8080/
Yk_Csj/prod-api/http://192.168.110.97:8080/

通過 Nginx 的 proxy_pass 功能,可以輕松實現接口轉發,讓前端項目無感知地訪問后端服務。

1.3 刷新問題

刷新 404 問題:SPA 前端項目如 Vue、React 等使用前端路由控制,刷新頁面時,Nginx 默認會將請求直接發送到后端或文件系統,如果找不到對應文件,就會返回 404 Not Found

解決方案
使用 try_files 配置,將所有無法匹配的路由重定向到 index.html,例如:

location / {
? ? try_files $uri $uri/ /index.html;
}


二、安裝腳本

Nginx 自動化安裝腳本。為了避免手動安裝的繁瑣操作,這里提供一個一鍵自動安裝 Nginx 的腳本,自動完成安裝、配置、啟動及防火墻設置。

2.1 創建腳本

粘貼以下內容:

#!/bin/bash
# ==========================================================
# Nginx 一鍵安裝腳本 for CentOS 7/8
# 適用于多項目、多端口部署場景
# ==========================================================NGINX_VERSION="1.24.0"
INSTALL_DIR="/usr/local/nginx"
SRC_DIR="/usr/local/src"
LOG_FILE="/var/log/nginx_install.log"echo "========== 開始安裝 Nginx =========="# 1. 檢查是否為 root 用戶
if [ "$(id -u)" != "0" ]; thenecho "[錯誤] 請使用 root 用戶運行此腳本!"exit 1
fi# 2. 安裝必要依賴
echo "[步驟] 安裝依賴中..."
yum install -y gcc gcc-c++ make pcre pcre-devel zlib zlib-devel openssl openssl-devel wget >> $LOG_FILE 2>&1
if [ $? -ne 0 ]; thenecho "[錯誤] 依賴安裝失敗,請檢查 yum 源!"exit 1
fi# 3. 下載 Nginx 源碼
mkdir -p $SRC_DIR
cd $SRC_DIR
if [ ! -f "nginx-${NGINX_VERSION}.tar.gz" ]; thenwget http://nginx.org/download/nginx-${NGINX_VERSION}.tar.gz >> $LOG_FILE 2>&1
fi# 4. 編譯安裝
tar -zxvf nginx-${NGINX_VERSION}.tar.gz >> $LOG_FILE 2>&1
cd nginx-${NGINX_VERSION}
./configure --prefix=$INSTALL_DIR --with-http_ssl_module --with-http_stub_status_module >> $LOG_FILE 2>&1
make && make install >> $LOG_FILE 2>&1if [ $? -eq 0 ]; thenecho "[成功] Nginx 安裝完成!"
elseecho "[錯誤] Nginx 編譯或安裝失敗,請查看日志:$LOG_FILE"exit 1
fi# 5. 配置 systemd 服務
cat > /usr/lib/systemd/system/nginx.service <<EOF
[Unit]
Description=Nginx HTTP Server
After=network.target[Service]
Type=forking
ExecStart=${INSTALL_DIR}/sbin/nginx
ExecReload=${INSTALL_DIR}/sbin/nginx -s reload
ExecStop=${INSTALL_DIR}/sbin/nginx -s stop
PrivateTmp=true[Install]
WantedBy=multi-user.target
EOF# 6. 設置開機自啟
systemctl enable nginx
systemctl start nginx# 7. 開放防火墻端口
echo "[步驟] 開放防火墻 80,81,82 端口..."
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --permanent --add-port=81/tcp
firewall-cmd --permanent --add-port=82/tcp
firewall-cmd --reload# 8. 創建項目目錄
mkdir -p /usr/local/nginx/html/{Dlxj_Csj,Hs_Csj,Yk_Csj}echo "[完成] Nginx 已安裝并配置完成!"
echo "訪問地址:"
echo "  項目1: http://服務器IP/"
echo "  項目2: http://服務器IP:81/"
echo "  項目3: http://服務器IP:82/"

該腳本為 CentOS 7/8 系統提供 Nginx 一鍵安裝功能,具體操作包括:

  1. 檢查是否以 root 用戶運行,安裝編譯 Nginx 所需的依賴;
  2. 下載指定版本(1.24.0)的 Nginx 源碼并編譯安裝到指定目錄;
  3. 配置 systemd 服務以便管理 Nginx 啟停,同時設置開機自啟;
  4. 開放防火墻 80、81、82 端口;最后創建三個項目目錄,

實現多項目、多端口部署的基礎配置,完成后可通過對應端口訪問不同項目。

一般情況下,粘貼后,腳本會直接執行。

2.2 不同系統

這個是支持 CentOS 和 Ubuntu 雙系統 的一鍵安裝腳本:

#!/bin/bash
# ==========================================================
# Nginx 一鍵安裝腳本 for CentOS 7/8 / Ubuntu 18+
# 支持多項目、多端口部署場景
# 自動檢測系統類型,并選擇合適的安裝方式
# ==========================================================NGINX_VERSION="1.24.0"
INSTALL_DIR="/usr/local/nginx"
SRC_DIR="/usr/local/src"
LOG_FILE="/var/log/nginx_install.log"echo "========== 開始安裝 Nginx =========="# 1. 檢查是否為 root 用戶
if [ "$(id -u)" != "0" ]; thenecho "[錯誤] 請使用 root 用戶運行此腳本!"exit 1
fi# 2. 檢測系統類型
if [ -f /etc/redhat-release ]; thenOS="CentOS"
elif [ -f /etc/lsb-release ] || [ -f /etc/debian_version ]; thenOS="Ubuntu"
elseecho "[錯誤] 不支持的操作系統,請使用 CentOS 或 Ubuntu!"exit 1
fi
echo "[步驟] 檢測到系統類型:$OS"# 3. 安裝必要依賴
echo "[步驟] 安裝編譯依賴..."
if [ "$OS" = "CentOS" ]; thenyum install -y gcc gcc-c++ make pcre pcre-devel zlib zlib-devel openssl openssl-devel wget tar >> $LOG_FILE 2>&1
elseapt update -yapt install -y gcc g++ make libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev wget tar >> $LOG_FILE 2>&1
fi
if [ $? -ne 0 ]; thenecho "[錯誤] 依賴安裝失敗,請檢查網絡或軟件源配置!"exit 1
fi# 4. 下載 Nginx 源碼
mkdir -p $SRC_DIR
cd $SRC_DIR
if [ ! -f "nginx-${NGINX_VERSION}.tar.gz" ]; thenecho "[步驟] 下載 Nginx 源碼..."wget http://nginx.org/download/nginx-${NGINX_VERSION}.tar.gz >> $LOG_FILE 2>&1if [ $? -ne 0 ]; thenecho "[錯誤] 下載 Nginx 失敗,請檢查網絡!"exit 1fi
fi# 5. 編譯安裝 Nginx
echo "[步驟] 開始編譯 Nginx..."
tar -zxvf nginx-${NGINX_VERSION}.tar.gz >> $LOG_FILE 2>&1
cd nginx-${NGINX_VERSION}
./configure --prefix=$INSTALL_DIR --with-http_ssl_module --with-http_stub_status_module >> $LOG_FILE 2>&1
make && make install >> $LOG_FILE 2>&1if [ $? -eq 0 ]; thenecho "[成功] Nginx 編譯安裝完成!"
elseecho "[錯誤] Nginx 編譯或安裝失敗,請查看日志:$LOG_FILE"exit 1
fi# 6. 配置 systemd 服務
echo "[步驟] 配置 systemd 服務..."
cat > /usr/lib/systemd/system/nginx.service <<EOF
[Unit]
Description=Nginx HTTP Server
After=network.target[Service]
Type=forking
ExecStart=${INSTALL_DIR}/sbin/nginx
ExecReload=${INSTALL_DIR}/sbin/nginx -s reload
ExecStop=${INSTALL_DIR}/sbin/nginx -s stop
PrivateTmp=true[Install]
WantedBy=multi-user.target
EOF# 7. 啟動 Nginx 并設置開機自啟
systemctl daemon-reexec
systemctl enable nginx
systemctl start nginx# 8. 配置防火墻(僅 CentOS)
if [ "$OS" = "CentOS" ]; thenecho "[步驟] 開放防火墻 80,81,82 端口..."firewall-cmd --permanent --add-port=80/tcpfirewall-cmd --permanent --add-port=81/tcpfirewall-cmd --permanent --add-port=82/tcpfirewall-cmd --reload
fi# 9. 創建前端項目目錄
echo "[步驟] 創建項目目錄..."
mkdir -p /usr/local/nginx/html/{Dlxj_Csj,Hs_Csj,Yk_Csj}# 10. 輸出結果
echo "[完成] Nginx 已安裝并配置完成!"
echo "訪問地址:"
echo "  項目1: http://服務器IP/"
echo "  項目2: http://服務器IP:81/"
echo "  項目3: http://服務器IP:82/"
echo "========== 安裝完成 =========="

這個腳本會自動檢測系統類型,然后選擇正確的包管理工具(yumapt),安裝依賴、編譯、配置并啟動 Nginx,同時設置開機自啟和項目目錄。這樣你在 CentOS 或 Ubuntu 上都能直接執行。

2.3?執行完成

執行完成后,驗證服務狀態:

systemctl status nginx

相關命令:

操作命令
啟動 Nginxsystemctl start nginx
停止 Nginxsystemctl stop nginx
重啟 Nginxsystemctl restart nginx
查看狀態

systemctl status nginx

平滑重載配置systemctl reload nginx
檢測配置文件nginx -t
查看訪問日志tail -f /usr/local/nginx/logs/access.log
查看錯誤日志tail -f /usr/local/nginx/logs/error.log
開機自啟systemctl enable nginx
取消開機自啟systemctl disable nginx


三、配置文件

Nginx 配置文件

3.1 配置文件

這里需要配置文件內容,文件位置:

/usr/local/nginx/conf/nginx.conf

將內容修改為以下版本:

user nobody;
worker_processes auto;
error_log logs/error.log error;
pid logs/nginx.pid;events {worker_connections 1024;
}http {include mime.types;default_type application/octet-stream;sendfile on;keepalive_timeout 65;gzip on;gzip_types text/plain text/css application/json application/javascript text/xml;log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" "$http_user_agent"';access_log logs/access.log main;# ===== 項目 1: Dlxj_Csj =====server {listen 80;server_name localhost;root /usr/local/nginx/html/Dlxj_Csj;index index.html index.htm;location / {try_files $uri $uri/ /index.html;}location ^~/prod-api/ {proxy_pass http://192.168.110.44:9013/;}error_page 500 502 503 504 /50x.html;location = /50x.html {root /usr/local/nginx/html;}}# ===== 項目 2: Hs_Csj =====server {listen 81;server_name localhost;root /usr/local/nginx/html/Hs_Csj;index index.html index.htm;location / {try_files $uri $uri/ /index.html;}location ^~/prod-api/ {proxy_pass http://192.168.110.97:8080/;}error_page 500 502 503 504 /50x.html;location = /50x.html {root /usr/local/nginx/html;}}# ===== 項目 3: Yk_Csj =====server {listen 82;server_name localhost;root /usr/local/nginx/html/Yk_Csj;index index.html index.htm;location / {try_files $uri $uri/ /index.html;}location ^~/prod-api/ {proxy_pass http://192.168.110.97:8080/;}error_page 500 502 503 504 /50x.html;location = /50x.html {root /usr/local/nginx/html;}}
}

3.2 目錄結構

/usr/local/nginx/html/
├── Dlxj_Csj
│ ? └── index.html
├── Hs_Csj
│ ? └── index.html
└── Yk_Csj
? ? └── index.html

3.3 重新啟動

重啟 Nginx

systemctl restart nginx


四、驗證訪問

項目URL
Dlxj_Csjhttp://192.168.110.125/
Hs_Csjhttp://192.168.110.125:81/
Yk_Csjhttp://192.168.110.125:82/

訪問對應地址,確認頁面是否正常加載。


五、問題排查

5.1 訪問 404

  1. 檢查項目目錄下是否有 index.html 文件;

  2. 確認 Nginx 配置文件 root 路徑與項目目錄一致。

5.2 接口 502

  • 后端服務未啟動或 IP/端口配置錯誤;

  • 使用以下命令確認端口狀態:netstat -tunlp | grep 9013


六、本文總結

6.1 清理舊環境

清理舊 Nginx 環境

# 1. 停止并禁用 Nginx 服務
sudo systemctl stop nginx
sudo systemctl disable nginx
sudo systemctl status nginx# 2. 刪除 systemd 服務文件
sudo rm -f /usr/lib/systemd/system/nginx.service
sudo rm -f /etc/systemd/system/nginx.service
sudo systemctl daemon-reload# 3. 刪除 Nginx 安裝目錄及源碼
sudo rm -rf /usr/local/nginx
sudo rm -rf /usr/local/src/nginx-*# 4. 清理殘留進程
sudo pkill -9 nginx# 5. 刪除 nginx 用戶(可選)
sudo userdel nginx

清理舊 Nginx 環境,最終腳本(可直接執行),適用于 CentOS 和 Ubuntu:

#!/bin/bash
# ==============================================
# Nginx 清理腳本,徹底刪除舊環境
# 適用系統:CentOS 7/8、Ubuntu 18+
# ==============================================echo "========== 開始清理 Nginx 舊環境 =========="# 1. 停止并禁用 Nginx 服務
echo "[步驟] 停止 Nginx 服務..."
systemctl stop nginx 2>/dev/null
systemctl disable nginx 2>/dev/null
systemctl status nginx || echo "Nginx 服務已停止"# 2. 刪除 systemd 服務文件
echo "[步驟] 刪除 systemd 服務文件..."
rm -f /usr/lib/systemd/system/nginx.service
rm -f /etc/systemd/system/nginx.service
systemctl daemon-reload# 3. 刪除安裝目錄
echo "[步驟] 刪除 Nginx 安裝目錄..."
rm -rf /usr/local/nginx
rm -rf /usr/local/src/nginx-*# 4. 清理殘留進程
echo "[步驟] 檢查并清理殘留進程..."
pkill -9 nginx 2>/dev/null || echo "無殘留進程"# 5. 刪除 Nginx 用戶(可選)
echo "[步驟] 檢查并刪除 nginx 用戶..."
if id "nginx" &>/dev/null; thenuserdel nginxecho "nginx 用戶已刪除"
elseecho "nginx 用戶不存在"
fiecho "========== 清理完成 =========="
echo "提示:如需重新安裝,請重新運行安裝腳本。"

該腳本 徹底清理舊的 Nginx 環境,包括停止并禁用 Nginx 服務、刪除 systemd 服務文件、清空安裝目錄和源碼、清理殘留進程,以及可選刪除 Nginx 用戶。執行后,系統中原有的 Nginx 及相關文件將被完全移除,為重新安裝和部署新的 Nginx 環境做好準備。

6.2 防火墻策略

以下命令用于開放 Nginx 使用的端口,并使修改立即生效:

# 開放項目1端口 80
firewall-cmd --permanent --add-port=80/tcp ?

# 開放項目2端口 81
firewall-cmd --permanent --add-port=81/tcp ?

# 開放項目3端口 82
firewall-cmd --permanent --add-port=82/tcp ?

# 重新加載防火墻策略,使修改生效
firewall-cmd --reload ?

如果你是通過前面提供的一鍵安裝腳本部署 Nginx,防火墻端口已經開放,無需重復執行上述命令;僅在手動安裝或需要修改端口策略時才需要執行這些命令。

6.3 實現的成果

通過上述部署和配置,我們成功實現了三個前端項目的獨立部署和訪問管理。具體成果如下:

  1. 三個前端項目分端口獨立部署,每個項目互不干擾;

  2. 每個項目都配置了獨立的后端接口代理,確保數據請求正確轉發;

  3. 訪問路徑清晰,運維人員和開發人員易于管理;

  4. 單頁面應用刷新不再出現 404 問題,用戶體驗良好;

  5. 一鍵腳本自動化安裝、配置 Nginx,大幅降低人工操作成本,提高部署效率。

經過此方案,服務器上的多前端項目管理更加規范、安全、高效,為后續運維和升級提供了可靠基礎。


七、更多操作

請看,Server?個人專欄

Server?https://blog.csdn.net/weixin_65793170/category_12128287.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/96441.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/96441.shtml
英文地址,請注明出處:http://en.pswp.cn/web/96441.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

2025最新:徹底解決Docker拉取鏡像超時問題

文章目錄&#x1f433; 解決 Docker 拉取鏡像超時&#xff1a;context deadline exceeded 完整指南&#xff08;2025 親測有效&#xff09;&#x1f525; 問題描述&#x1f9e9; 根本原因分析? 解決方案匯總? 方案 1&#xff1a;配置多源鏡像加速器&#xff08;推薦&#xff…

小鵬汽車 vla 算法最新進展和模型結構細節

小鵬汽車在 VLA&#xff08;視覺 - 語言 - 動作&#xff09;算法領域的最新進展和模型結構細節&#xff0c;體現了其在端到端智駕系統和車端大模型部署上的技術突破。以下是基于 2025 年 9 月最新公開信息的深度解析&#xff1a; 一、最新進展&#xff1a;全場景 VLA 系統量產落…

斐波那契數列推廣

目錄 問題&#xff1a; 法一&#xff1a; 法二&#xff1a; 例題: 問題&#xff1a; 已知斐波那契數列的第一個和最后一個數字&#xff0c;如何求整個數列&#xff08;即第二個數字&#xff09; 法一&#xff1a; 主要是將數列拆分成兩個數列的思想 法二&#xff1a; 暴力…

基于STM32設計的智慧路燈(華為云IOT)_281

文章目錄 一、前言 1.1 項目介紹 【1】項目開發背景 【2】設計實現的功能 【3】項目硬件模塊組成 【4】設計意義 【5】國內外研究現狀 【6】摘要 1.2 設計思路 1.3 系統功能總結 1.4 開發工具的選擇 【1】設備端開發 【2】上位機開發 1.5 參考文獻 1.6 系統框架圖 1.7 系統原理…

實驗十 合理定義分布列實現性能優化-分布式表關聯

實驗介紹本實驗通過分析普通查詢過程中存在的性能瓶頸點&#xff0c;通過執行計劃的分析找到可能的性能優化點并加以實施&#xff0c;最終達到優化的效果&#xff0c;重點關注分布式關聯相關查詢語句的優化。實驗目的了解通過合理定義分布列實現分布式關聯的性能優化。實驗步驟…

C#,RabbitMQ從入門到精通,.NET8.0(路由/分布式/主題/消費重復問題 /延遲隊列和死信隊列/消息持久化 )/RabbitMQ集群模式

為什么使用消息隊列 消息隊列&#xff08;MQ&#xff09;在分布式系統中用于解耦生產者和消費者&#xff0c;提高系統的異步處理能力、削峰填谷、增強可擴展性和可靠性。通過消息隊列&#xff0c;任務可以異步執行&#xff0c;避免系統因瞬時高并發而崩潰。 消息隊列場景 異…

OpenHarmony之SELinux安全組件底層原理設計架構精講

1. 組件介紹 1.1 核心功能 **SELinux(安全增強式Linux)**是Linux歷史上杰出的安全組件,包含一組內核修改和用戶空間工具,并提供了基于安全策略的強制訪問控制機制(Mandatory Access Control,MAC)。本部件負責對文件、屬性、服務等系統資源提供強制訪問控制保護,提供n…

IIS 部署 asp.net core 項目時,出現500.19、500.31問題的解決方案

目錄 &#xff08;一&#xff09;500.19 問題 1. 問題說明 2. 原因 3. 解決 &#xff08;二&#xff09;500.31 問題 1. 問題說明 2. 原因 打開事件檢視器的3種方式&#xff1a; 3. 解決 &#xff08;一&#xff09;500.19 問題 1. 問題說明 2. 原因 Web項目發布時&am…

中大型水閘安全監測的重要性及實施方法

水閘作為水利工程體系中的關鍵性構筑物&#xff0c;其結構安全性和運行可靠性直接影響到整個水利系統的穩定運行&#xff0c;更與下游地區人民群眾的生命財產安全息息相關。作為水利樞紐工程的重要控制節點&#xff0c;水閘承擔著防洪排澇、灌溉供水、航運發電等多重功能&#…

【芯片設計-信號完整性 SI 學習 1.1.1 -- Unit Interval,比特周期】

文章目錄1. Unit Interval (UI) / 比特周期 的定義2. 舉例說明3. 在眼圖 (Eye Diagram) 中的體現4. 示意圖(a) 單比特周期(b) 不同速率下的 UI(c) 眼圖中的 UI5. 總結1. Unit Interval (UI) / 比特周期 的定義 在高速信號傳輸與 信號完整性 (SI) 測試中&#xff0c;Unit Inter…

Go語言開發工具全解析

Go 語言的開發工具生態對于提高開發效率、保證代碼質量和團隊協作至關重要。一套完善的工具鏈可以幫助開發者&#xff1a;1. 加速編碼過程代碼模板快速生成常見模式例如使用代碼片段(Snippet)快速生成HTTP服務框架自動生成測試用例模板實時語法檢查減少錯誤即時顯示類型不匹配錯…

[郵件服務器core] 安全通信(SSL/TLS) | OpenSSL庫管理 | 服務端安全SECURITY.md

第5章&#xff1a;安全通信&#xff08;SSL/TLS&#xff09; 歡迎回來 在第4章&#xff1a;服務運行中&#xff0c;我們學習了如何啟動Dovecot郵件服務器并使其運行。 現在&#xff0c;我們的服務器已經啟動并準備好處理電子郵件&#xff0c;但有一個關鍵問題&#xff1a;我…

Lodash方法總結

目錄 1. _.defaults()為對象填充默認值 基本語法 功能說明 示例代碼 注意事項 與其他類似方法的區別 2. _.pickBy()刪除對象中值為空串或 null 的屬性 實現方法 代碼說明 擴展&#xff1a;深層過濾 3._.omitBy()移除滿足條件的屬性 基本語法 核心功能 示例代碼 1…

C#---Expression(表達式)

前言&#xff1a;Expression 是C# 高級編程&#xff0c;表達式的應用場景有 ORM框架&#xff1a;Entity Framework&#xff0c;Dapper等&#xff0c;規則引擎&#xff1a;動態業務規則評估&#xff0c; 依賴注入&#xff1a;高級DI容器實現&#xff0c;測試框架&#xff1a;模擬…

Lodash-es 完整開發指南:ES模塊化JavaScript工具庫實戰教程

簡介 Lodash-es 是 Lodash 庫的 ES 模塊版本&#xff0c;提供了大量實用的 JavaScript 工具函數。它支持按需導入&#xff0c;可以顯著減少打包體積&#xff0c;是現代 JavaScript 項目中的首選工具庫。 主要特性 ES 模塊支持: 完全支持 ES6 模塊語法按需導入: 只導入需要的…

26. AI-Agent-Dify

文章目錄前言一、Dify入門為什么使用 Dify&#xff1f;Dify 能做什么&#xff1f;二、Dify私有化部署Docker Compose 部署前提條件克隆 Dify 代碼啟動 Dify更新 Dify訪問 Dify自定義配置三、Dify構建企業級Agent應用定義如何使用智能助手添加助手需要的工具配置 Agent配置對話開…

云原生:微服務與Serverless指南

Copilot時代的開發者效能提升 代碼生成與補全&#xff1a;減少重復性編碼工作&#xff0c;加快開發速度錯誤檢測與修復&#xff1a;實時提示潛在問題&#xff0c;降低調試時間知識獲取與學習&#xff1a;幫助開發者快速掌握新語言或框架協作效率&#xff1a;通過AI輔助減少團隊…

SpringBoot + Apache Tika:一站式解決文件數據提取難題

在日常開發中&#xff0c;你是否也遇到過這樣的窘境&#xff1a;領導甩來需求“把用戶上傳的 Word、Excel、PDF 里的關鍵信息扒出來存庫”&#xff0c;你卻要對著不同格式逐個攻堅——解析 Word 用 POI 還要處理 .doc/.docx 兼容&#xff0c;解析 Excel 要啃合并單元格、公式計…

車牌模擬生成器:Python3.8+Opencv代碼實現與商業應用前景(C#、python 開發包SDK)

車牌模擬生成器&#xff1a;Python代碼實現與商業應用前景引言在智慧城市建設和汽車行業數字化浪潮中&#xff0c;車牌作為車輛的唯一標識&#xff0c;其相關技術應用正變得越來越重要。今天我們將介紹一個基于Python的車牌模擬生成器&#xff0c;探討其技術實現、功能特點以及…

小程序非主頁面的數據動作關聯主頁面的數據刷新操作

如果在主頁面跳轉到其他頁面。比如說我的收藏頁面&#xff0c;然后有取消收藏的動作&#xff0c;當返回到主頁面的時候&#xff0c;如果有關聯數據顯示在主頁面&#xff0c;刷新頁面對應的狀態。 下面的代碼是實現&#xff1a;//卡片收藏/取消if (newCollectd) {this.setData({…