Nginx核心功能及正則表達

目錄

一:正向代理

1:編譯安裝nginx

(1)安裝支持軟件

(2)創建運行用戶、組和日志目錄

(3)編譯安裝nginx

(4)添加nginx系統服務

2:配置正向代理

(1)編輯主配置文件添加正向代理相關配置

(2)驗證正向代理

二:反向代理

1:配置nginx七層代理

(1)環境安裝

(2)配置nginx七層代理轉發

(3)驗證轉發效果

2:配置nginx四層代理

(1)配置四層代理

(2)驗證四層代理

三:Nginx緩存

1:緩存功能的核心原理和緩存類型

2:代理緩存功能設置

(1)反向代理配置

(2)設置緩存功能

(3)驗證緩存功能

四:Nginx rewrite和正則

1:nginx正則

2:nginx? location

(1)location 的語法:

(2)location 驗證

3:Rewrite


一:正向代理

正向代理(Forward Proxy)是一種位于客戶端和原始服務器之間的代理服務器,其主要作用是將客戶端的請求轉發給目標服務器,并將響應返回給客戶端Nginx的正向代理充當客戶端的"中間人",代表用戶訪問外部資源并隱藏真實IP。它是企業內網管控、安全審計與加速訪問的核心工具。

用于場景一般是:
>內網訪問控制:限制員工訪問特定網站(如社交媒體)
>匿名訪問:通過代理服務器隱藏用戶真實身份。
>資源緩存加速:緩存公共資源(如軟件包、鏡像文件)減少外網帶寬消耗.

1:編譯安裝nginx

(1)安裝支持軟件

(1)安裝支持軟件
Nginx的配置及運行需要pcre、zlib等軟件包的支持,因此應預先安裝這些軟
件的開發包(devel),以便提供相應的庫和頭文件,確保Nginx的安裝順利完成。
[root@localhost ^]# dnf install -y gcc make pcre-devel z]ib-developenssl-devel perl-ExtUtils-MakeMaker git wget tar

(2)創建運行用戶、組和日志目錄

Nginx服務程序默認以nobody身份運行,建議為其創建專門的用戶賬號,以便更準確地控制其訪問權限,增加靈活性、降低安全風險。例如,創建一個名為nginx的用戶,不建立宿主文件夾,也禁止登錄到Shell環境。
[root@localhostuseradd -M -s /sbin/nologin nginx
[root@localhost ^]# mkdir -p /var/log/nginx
[root@localhost ^]# chown -R nginx:nginx/var/log/nginX

(3)編譯安裝nginx

配置Nginx的編譯選項時,將安裝目錄設為/usr/local/nginx,運行用戶和組均
設為nginx;

啟用http_stub_status_module模塊以支持狀態統計,便于查看服務器的連接
信息。具體選項根據實際需要來定,配置前可參考"./configure--help"給出的說明。
[root@localhost`]# tar zxf nginx-1.26.3_http_proxy.tar.gz
[root@localhost~]# cd nginx-1.26.3
[root@localhost `]# git clone

https://github.com/chobits/ngx_http_proxy_connect_module.git#(默認nginx不支持轉發https)下載第三方模塊,用以支持正向代理https發,提供的源碼目錄已提前放置該模塊,這里無需下載,僅作為介紹
[root@localhost nginx-1.26.3]#./configure --prefix=/usr/local/nginx
--user=nginx --group=nginx --with-http_ssl_module
--with-http_v2_module --with-http_realip_module
--with-http_stub_status_module --with-http_gzip_staticmodule
--with-pcre --with-stream --with-stream_ssl_module
--with-stream_realip_module --with-http_gzip_static_module
--add-module=./ngx_http_proxy_connect_module
[root@localhost nginx-1.26.3]# make & make install

參數說明:
#指定nginx運行用戶????????--user=nginx
#指定nginx運行組????????--group=nginx
#支持https://????????????????--with-http_ssl_module
#支持http版本2????????????????--with-http_v2_module
#支持ip透傳????????????????--with-http_realip_module
#支持狀態頁面????????????????--with-http_stub_status_module? ? ? ?
#支持壓縮????????????????--with-http_gzip_static_module? ? ? ?
#支持正則????????????????--with-pcre
#支持tcp反向代理????????????????--with-stream
#支持tcp的ssl加密????????????????--with-stream_ssl_module
#支持tcp的透傳ip????????????????--with-stream_realip_module
--add-module=./ngx_http_proxy_connect_module????????#支持https轉發默認nginx不支持https轉發,需要添加第三方模塊

為了使Nginx服務器的運行更加方便,可以為主程序nginx創建鏈接文件,以便管理員直接執行"nginx"命令就可以調用 Nginx的主利星序。
[root@localhost nginx-1.26.3]# 1n -s /usr/local/nginx/sbin/nginx/usr/local/sbin/

(4)添加nginx系統服務

為了使Nginx服務的啟動、停止、重載等操作更加方便,可以編寫Nginx朋務腳本,并使用chkconfig和systemctl工具來進行管理。
[root@localhost ^]# vi /lib/systemd/system/nginx. service
[Unit]
Description=The NGINX HTTP and reverse proxy servver
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/sbin/nginx -t
ExecStart=/usr/local/sbin/nginx
ExecReload=/usr/local/sbin/nginx -s reload
ExecStop=/bin/kill -s QUIT $MAINPID
TimeoutStopSec=5
KillMode=process
PrivateTmp=true
User=root
Group=root
[Install]
WantedBy=multi-user.target
[root@localhost ^]# systemctl daemon-reload
[root@localhost^]# systemctl start nginx
[root@localhost ^]# systemctl enable nginx

2:配置正向代理

(1)編輯主配置文件添加正向代理相關配置

[root@localhost ^]# vi /usr/local/nginx/conf/nginx.cont?
server? ?{
????????listen 8080;????????????????#代理監聽端口
????????server_name proxy.example.com;

#解析域名使用的DNS
resolver 8.8.8.8 1.1.1.1;????????#多個DNS用空格分隔
#啟用代理CONNECT方法(支持HTTPS)
proxy_connect;
proxy_connect_allow 443 80;????????#允許代理到80和443端口
proxy_connect_connect_timeout 10s;
proxy_connect_read_timeout 10s;
proxy_connect_send_timeout 10s;
#處理HTTP/HTTPS請求
location? ? /? {
????????proxy_pass $scheme://shttp_host$request_uri;????????#動態協議?
????????proxy_set_header Host $http_host;
????????#優化緩沖區
????????proxy_buffers 256 4k;
????????proxy_max_temp_file_size 0;
????????#保持連接
????????proxy_http_version 1.1;
????????proxy_set_header Connection

? ? ? ? }

}
[root@localhost "~]#nginx -t
[root@localhost ^]#nginx -s reload

(2)驗證正向代理

Linux中驗證,使用curl命令,并指定代理服務器進行訪問測試
[root@localhost ^]curl -x http://192.168.10.202:8080www.baidu.com

二:反向代理

Nginx的七層(應用層)反向代理基于HTTP/HTTPS協議,深度解析應用層內容
(如URL、Header、Cookie),將客戶端請求精準轉發至后端服務器。作為企業級架構的"智能調度器",它實現了負載均衡、安全隔離與與性能優化的核心能力。應用場景一般是:
>負載均衡:將流量分發至多臺后端服務器,避免單點故障。
>動靜分離:靜態資源(圖片、CSS/JS)由Nginx直接響應,動態請求(PHP、API)轉發至Apache/Tomcat。
>SSL終端:統一處理HTTPS加密/解密,降低后端服務器計算壓力。
>灰度發布:根據請求特征(如IP、Header)將部分流量導向新版本服務。
Nginx的四層(網絡層)反向代理基于TCP/UDP協議,直接轉發原始數據流,不解析應用層內容。它專為高性能、低延遲的傳輸層場景設計,是數據庫、游戲服務器等非HTTP服務的理想選擇。應用場景一般是:
>數據庫代理:對外暴露統一端口,內部轉發至MySQL、Redis集群。
>游戲服務器:代理UDP協議,實現實時數據包負載均衡。
>SSH跳板機:通過端口映射安全訪問內網服務器。
>高可用服務:TCP服務(如MQTT)的主備切換與健康檢查E。

反向代理,指的是瀏覽器/客戶端并不知道自己要訪問具體哪臺目標服務器,只知道去訪問代理服務器,代理服務器再通過反向代理+負載均衡實現請求分發到應用服務器的一種代理服務。
反向代理服務的特點是代理服務器代理的對象是應用服務器,也就是對于瀏覽器/客戶端 來說應用服務器是隱藏的。

1:配置nginx七層代理

(1)環境安裝

192.168.10.201上操作:
[root@localhost~]#systemctl stop firewalld
[root@localhost~]#dnf install httpd -y
[root@localhost~]#echo"這是后端主機">/var/www/html/index.html

[root@localhost~]#systemctl start httpd

(2)配置nginx七層代理轉發

192.168.10.202上操作:
[root@localhost^]# vi /usr/local/nginx/conf/nginx.conf
http {
????????upstream backend????????#后端地址池設置
????????????????server 192.168.10.201:80;????????#后端主機設置
? ? ? }? ??

????server? ?{
????????????????listen 80;
????????????????server_name example.com;
????????????????location/{
????????????????????????proxy_passhttp://backend;#動態請求轉發
????????????????????????proxy_set_header Host $host;
????????????????????????proxy_set_header X-Real-IP $remote_addr;

}
????????location /static/ {
????????????????root/data/www;????????#靜態資源直接響應
????????????????expires 30d;????????????????#客戶端緩存30天

? ? ? ? ? ?}

? ? ? }

}
[root@localhost#nginx -t
[root@localhost#nginx -s reload

上述配置中,使用upstream定義后端應用服務器的地址池"backend",在location塊中,使proxy_pass,轉發請求至后端地址池,proxy_set_headerHost$host:將請求中的Host頭部設置為客戶端請求的主機名6,proxy_set_header X-Real-IP$remote_addr:將請求中的X-Real-IP頭部設置為客戶端的真實IP地址。

(3)驗證轉發效果

[root@localhost ^]# curl 192.168.10.202
這是后端主機

2:配置nginx四層代理

SSH協議是基于TCP協議的,配置nginx的四層代理,實現代理ssh請求至后端服務器,用以登錄內網服務器場

(1)配置四層代理

192.168.10.202上操作:
[root@localhost~]#vi /usr/local/nginx/conf/nginx.conf
stream? ? ? ? {
????????upstream ssh cluster? {????????????????#定義后端地址池
????????server 192.168.10.201:22;?????? ? ? #設置后端地址和服務端口

}
server? ? ? ? {
????????listen 2222;
????????proxy_pass ssh_cluster;
????????proxy_connect_timeout 5s;????????連接超時時間
????????proxy_timeout lh;????????長連接保持時間
[root@localhost]#nginx -t
[root@localhost^]#nginx -s reload
[root@localhost~]#ss -nlpt | grep 2222
LISTEN O????????511????????0.0.0.0:2222????????0.0.0.0:*
users:(("nginx",pid=8404, fd=6), ("nginx",pid=8403, fd=6))?

(2)驗證四層代理

[root@localhost ^]# ssh root@192.168.10.202 -p2222
[root@localhost ^]#ifconfig
ens33: flags=4163<UP, BROADCAST, RUNNING, MULTICAST>????????mtu 1500
????????inet 192.168.10.201 netmask 255.255.255.0 broadcast192.168.10.255
????????inet6 fe80::20c:29ff:fe9f:del5 prefixlen 64 sccopeid0x20<link>
????????ether 00:0c:29:9f:de:15 txqueuelen 1000 (Ethernet)
????????RX packets 389822 bytes 511828164 (488.1 MiB)
? ? ? ? RX errors 0 dropped 0 overruns 0 frame 0
????????TX packets 104614 bytes 8588675 (8.1 MiB)
????????TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

通過以上操作驗證發現,通過202的2222端口登陸后,實際上是登錄到201服務器上

三:Nginx緩存

1:緩存功能的核心原理和緩存類型

? ? ? ? ? ?緩存類型????????????????????????????????作用場景
? ?代理緩存? ? ? ? ? ? ? ? ? ? ? ?? ??? ? 反向代理模式下緩存后端服務器(如Tomcat、Apache)的響應內容。
?? FastCGI緩存? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?????????緩存PHP/Python等通過FastCGI協議處理的? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 動態內容 (需配FastCGI緩存合PHP-FPM使用)。

uWSGI/SCGI 緩存????????????????????????????????????????類似FastCGI,用于其他后端協議。
靜態資源緩存?????????????????????????????????????????? ? 通過expires 指令設置客戶端瀏覽器緩存(非服務端緩存)

代理緩存:

代理緩存原理:
第一步:客戶端第一次向Nginx請求數據A;
第二步:當Nginx發現緩存中沒有數據A時,會向服務端請求數據A;
第三步:服務端接收到Nginx發來的請求,則返回數據A到Nginx,并且緩存在Nginx;
第四步:Nginx返回數據A給客戶端應用;
第五步:客戶端第二次向Nginx請求數據A;
第六步:當Nginx發現緩存中存在數據A時,則不會請求服務端;
第七步:Nginx把緩存中的數據A返回給客戶端應用。

2:代理緩存功能設置

(1)反向代理配置

[root@localhost ^]#/usr/local/nginx/conf/nginx.conf
http {
????????upstream backend {????????????????#后端地址池設置
????????????????server 192.168.10.201:80;????????#后端主機設置

}
????????server? ?{
????????????????listen 80;
????????????????server_name example.com;
????????????????location /? ? {
????????????????????????proxy_passhttp://backend;????????#動態請求轉發
????????????????????????proxy_set_header Host $host;
????????????????????????proxy_set_header X-Real-IP $remote_addr;

? ? ? ? }
location /static/ {
????????root/data/www;????????????????#靜態資源直接響應

expires 30d;????????????????#客戶端緩存30天

}

? ? ? ? }

}
[root@localhost#nginx -t
[root@localhost#nginx -s reload

(2)設置緩存功能

[root@localhost~]#mkdir-p/data/nginx/cache????????#創建緩存目錄
[root@localhost~]#chown nginx:nginx /data/nginx/cache -R
[root@localhost~]#vim /usr/local/nginx/conf/nginx.conf
http {
????????#定義緩存路徑和參數
????????proxy_cache_path /data/nginx/cache levels=1:2
keys_zone=my_cache:10m inactive=60m_max_size=lg_use_temp_path=off;
????????server? ? ? ? {
????????????????listen 80;
????????????????server_name example.com;

????????????????location / {
????????????????????????proxy_pass http://backend;
????????????????????????#啟用緩存區
????????????????????????proxy_cache my_cache;
????????????????????????#定義緩存鍵(URL+請求方法+協議)
????????????????????????proxy_cache_key
"$scheme$request_method$host$request_uri";
????????????????????????#緩存有效期(不同狀態碼不同時間)
????????????????????????proxy_cache_valid 200 302 10m; ????????#200/302狀態碼緩存10分分鐘
? ? ? ? ? ? ? ? ? ? ? ? proxy_cache_valid 404? ? ? ? ? ?1m;?????????? ? ??#404緩存1分鐘? ? ? ? ? ? ? ??
????????????????????????proxy_cache_valid any? ? ? ? ? ?5s;???????????????????? ? #其他狀態碼緩存5秒
????????????????????????#添加緩存狀態頭(調試用)
????????????????????????add_header X-Cache-Status $upstream_cache_status;

? ? ? ? ? ? ? ? }

? ? ? ? }

}

關鍵配置解析:

>proxy_cache_path:定義緩存文件的存儲路徑
>levels=1:2:定義緩存目錄的層級結構,levels=N:M,表示緩存文件路徑的層級深度,
>keys_zone=my_cache:10m:定義共享內存區域,用于存儲緩存鍵(key)和元數據(如過期時間),10m:共享內存區大小(通常每1MB可存儲約8000個鍵
>inactive=60m:定義緩存內容的閑置有效期。60分鐘內未被訪問,將被自動刪除
>max_size=lg:定義緩存目錄的最大磁盤空間。當緩存量i達到1GB時,Nginx啟動LRU(最近最少使用)算法清理舊緩存。
>use_temp_path=off:控制臨時文件的存儲位置,推薦值:off(減少磁盤操作,提升性能)

(3)驗證緩存功能

[root@localhost~]# curl -I 192.168.10.202
HTTP/1.1 200 OK
Server: nginx/1.26.3
Date: Tue, 04 Mar 2025 12:45:44 GMT
Content-Type: text/html
Content-Length: 19
Connection: keep-alive
Last-Modified: Mon, 03 Mar 2025 12:39:32 GMT
ETag: "67c5a304-13"
X-Cache-Status: MISS????????#MISS表示沒有命中緩存
Accept-Ranges: bytes
[root@localhost ^]# curl -I 192.168.10.202
HTTP/1.1 200 OK
Server: nginx/1.26.3
Date: Tue, 04 Mar 2025 12:45:50 GMT
Content-Type: text/html
Content-Length: 19
Connection: keep-alive
Last-Modified: Mon, 03 Mar 2025 12:39:32 GMT
ETag: "67c5a304-13"

X-Cache-Status:HIT????????#再次請求發現已經命中,說明數據已經被緩存
Accept-Ranges: bytes
[root@localhost ^]#ls /data/nginx/cache
查看緩存目錄發現已緩存數據

四:Nginx rewrite和正則

1:nginx正則

常用的正則表達式元字符:

字符描述
^匹配輸入字符串的起始位置。
$匹配輸入字符串的結束位置。
*匹配前面的字符零次或多次。
+匹配前面的字符一次或多次。
?匹配前面的字符零次或一次。
.匹配初“\n”之外的任何單個字符。
\將后面接著的字符標記為一個特殊字符或一個原義字符或一個向后引用
\d匹配純數字
{n}重復n次
{n,}重復n次或更多次
[c]匹配單個字符c
[a-z]匹配a-z小寫字母的任意一個
[a-zA-Z]匹配a-z小寫字母或A-Z大寫字母的任意一個

2:nginx? location

(1)location 的語法:

模式說明
location/uri? ?普通前綴匹配匹配已指定路徑開頭的URI
location = /?精確匹配僅匹配完全相同的URI(優先級最高)。
location ~?正則匹配區分大小寫的正則表達式匹配。
location ~*??正則匹配不區分大小寫的正則表達式匹配。
location ^ ~?精確前綴匹配匹配前綴路徑后,不再檢查正則匹配(優先級高于正則
location /?通用匹配認方式,優先級最低,其他方式匹配不到時匹配

location 的優先級規則:
精確匹配>精確前綴匹配>正則匹配(~和~*同時存在時,文件中物理位置靠上的優先)>普通前綴匹配>通用匹配。

(2)location 驗證

[root@localhost ^]# vim /usr/local/nginx/conf/nginx.coonf
location? /? {
????????return200"通用匹配":#其他方式匹配不到時匹配

? ? ? ? }
location /abc {
????????return200"普通前綴匹配";#uri必須是/abc開頭(和精確前級四
配功能類似,但是優先級要低很多

? ? ? ? }
location? ~? /test/abcdef? ?{
????????return200"區分大小寫正則";#uri中必須包含/abc

????????}
location? ~? * /test/abc? ?{
????????return 200"不區分大小寫正則";#uri中必須包含/abc或/ABC
location? ^~? /abcdef? ?{
????????return 200"精確前綴匹配";#uri必須是/abc開頭
location = /abc {
????????return 200"精確匹配";#uri必須等于/abc
[root@localhost ^]# nginx -s reload
[root@localhost ^]# curl 192.168.10.202/abc
精確匹配

每次請求192.168.10.202/abc后,按優先級順序依次注釋配置了文件中的location,會發現每次的響應內容發生變更了。PS:使用正則模式時,URI部分可以使用正則表達式

3:Rewrite

Rewrite語法
rewrite <regex><replacement>[flag];
regex:正則匹配URL字符串(只能對域名后邊的除去傳遞的參數外的字符串起作用,例如http://www.kgc.com/index.php?id=l只對/inddex.php重寫)replacement:重寫跳轉后的地址
flag類型:
?????????last:重寫后的URI會重新觸發location匹配,并執行新匹配到的location塊中的指令,是默認類型
????????????????break:重寫后的URI不會重新匹配location,直接在當前 location中處理,且后續的指令不再執行
????????redirect:返回302臨時重定向,瀏覽器地址會顯示跳轉后的URL地址,爬蟲不會更新url(因為是臨時)
????????permanent:返回301永久重定向,瀏覽器地址欄會顯示跳轉后的URL地址,爬蟲更新url。


在實際工作的應用中,Nginx跳轉需求有三種方式可實現。i可以直接用rewrite進行匹配跳轉,也可以使用 if匹配全局變量后跳轉。另外,還可以使用location匹配再跳轉。所以rewrite只能放在server{}、if{}、location{}
配置段中
1.server{} 塊中的 rewrite
執行順序:在請求進入server塊后、匹配location前執行。
作用域:影響該server塊下所有請求(全局生效)。

2.location{}塊中的rewrite
執行順序:在請求匹配到該location后執行。
作用域:僅對該location匹配的請求生效(局部生效)。
3.if{}塊中的rewrite
執行順序:在滿足if條件時觸發。
作用域:依賴if表達式所在的上下文(如在server中或location中)。

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

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

相關文章

npm命令介紹(Node Package Manager)(Node包管理器)

文章目錄 npm命令全解析簡介基礎命令安裝npm&#xff08;npm -v檢插版本&#xff09;初始化項目&#xff08;npm init&#xff09;安裝依賴包&#xff08;npm install xxx、npm i xxx&#xff09;卸載依賴包&#xff08;npm uninstall xxx 或 npm uni xxx、npm remove xxx&…

【Linux】Linux基礎概念

一些比較重要的使用Linux的前情提要。 部分經驗來源于網絡&#xff0c;若有侵權請聯系我刪除&#xff0c;主要是做筆記的時候忘記寫來源了&#xff0c;做完筆記很久才寫博客。 專欄目錄&#xff1a;記錄自己的嵌入式學習之路-CSDN博客 目錄 1 Shell命令參數 2 系統變量…

阿里開源Qwen3:大語言模型的新突破

一、模型概覽&#xff1a;豐富的模型家族 Qwen3 系列包含了 2 款混合專家&#xff08;MoE&#xff09;模型與 6 款密集&#xff08;Dense&#xff09;模型&#xff0c;參數量覆蓋范圍極廣&#xff0c;從 0.6B 一直延伸至 235B 。其中&#xff0c;旗艦模型 Qwen3 - 235B - A22B…

數字智慧方案5856丨智慧環保綜合解決方案(50頁PPT)(文末有下載方式)

資料解讀&#xff1a;智慧環保綜合解決方案 詳細資料請看本解讀文章的最后內容。 隨著城市化進程的加速和環境問題的日益嚴峻&#xff0c;智慧環保成為提升城市環境管理水平的重要手段。本文將對智慧環保綜合解決方案進行詳細解讀&#xff0c;探討其在實際應用中的需求、解決…

基于ssm的網盤管理系統(全套)

一、系統架構 前端&#xff1a;vue | element-ui 后端&#xff1a;spring | springmvc | mybatis 環境&#xff1a;jdk1.8 | mysql | maven | tomcat | nodejs 二、代碼及數據庫 三、功能介紹 01. 注冊 02. 登錄 03. 管理員-首頁 04. 管理員-個人中心 …

PostgreSQL 的 VACUUM 與 VACUUM FULL 詳解

PostgreSQL 的 VACUUM 與 VACUUM FULL 詳解 一、基本概念對比 特性VACUUMVACUUM FULL定義常規維護操作&#xff0c;清理死元組激進重組操作&#xff0c;完全重寫表數據鎖級別不阻塞讀寫(共享鎖)排他鎖(阻塞所有操作)空間回收只標記空間為可用&#xff0c;不返還OS空間返還操作…

復刻低成本機械臂 SO-ARM100 舵機配置篇(WSL)

視頻講解&#xff1a; 復刻低成本機械臂 SO-ARM100 舵機配置篇&#xff08;WSL&#xff09; 飛特舵機 組裝之前需要配置舵機的ID&#xff0c;如下的網址為舵機的資料&#xff0c;實際上用不到&#xff0c;但可以mark在這里 Software-深圳飛特模型有限公司 User Guide里面可以…

Tailwind CSS實戰技巧:從核心類到高效開發

使用 Kooboo平臺 訓練實戰技巧&#xff0c;無需配置安裝&#xff0c;直接引入CDN就可以在線練習了&#xff01;具體操作流程&#xff1a;進入Kooboo后&#xff0c;選擇創建空白站點 -> 站點開發 -> 控制面板 -> 頁面 ->新建普通頁面 -> 編寫代碼 一、核心布局類…

【LINUX操作系統】線程操作

了解了線程的基本原理之后&#xff0c;我們來學習線程在C語言官方庫中的寫法與用法。 1. 常見pthread接口及其背后邏輯 1.1 pthread_create 與線程有關的函數構成了?個完整的系列&#xff0c;絕?多數函數的名字都是以“pthread_”打頭的 ? 要使?這些函數庫&#xff0c;…

【AI面試準備】Azure DevOps沙箱實驗全流程詳解

介紹動手實驗&#xff1a;通過 Azure DevOps 沙箱環境實操&#xff0c;體驗從代碼提交到測試篩選的全流程。如何快速掌握&#xff0c;以及在實際工作中如何運用。 通過 Azure DevOps 沙箱環境進行動手實驗&#xff0c;是快速掌握 DevOps 全流程&#xff08;從代碼提交到測試篩選…

VulnHub-DC-2靶機

主機發現 sudo arp-scan -l 以sudo管理員權限掃描本地活動ip地址 Interface: eth0, type: EN10MB, MAC: 08:00:27:22:46:4f, IPv4: 192.168.252.230 Starting arp-scan 1.10.0 with 256 hosts (https://github.com/royhills/arp-scan) 192.168.252.6 4c:5f:70:74:3c:3b …

藏語英語中文機器翻譯入門實踐

&#x1f3af; 項目目標&#xff1a; 輸入藏文句子&#xff0c;自動翻譯成英文和中文&#xff08;或輸入中文&#xff0c;翻譯為英文和藏文&#xff09;。 &#x1f50d; 技術與原理簡介 機器翻譯&#xff08;Machine Translation, MT&#xff09;是人工智能中自然語言處理&a…

【阿里云大模型高級工程師ACP習題集】2.9 大模型應用生產實踐(上篇)

練習題 【單選題】在自然語言處理的法務咨詢場景中,以下哪種模型選擇最為合適? A. 通用大語言模型 B. 經過數學領域微調的模型 C. 面向法律領域訓練的模型 D. 視覺模型 【多選題】以下哪些屬于模型非功能性需求?( ) A. 模型對不同語言的支持能力 B. 模型的響應速度要求 C.…

WPF之ProgressBar控件詳解

文章目錄 1. ProgressBar控件簡介2. ProgressBar的基本屬性和用法2.1 基本屬性2.2 基本用法2.3 代碼中修改進度 3. 確定與不確定模式3.1 確定模式&#xff08;Determinate&#xff09;3.2 不確定模式&#xff08;Indeterminate&#xff09; 4. 在多線程環境中更新ProgressBar4.…

IntelliJ IDEA 保姆級安裝教程(附安裝包)

文章目錄 一、下載二、安裝三、啟動 一、下載 Ultimate 2021.1.1 - Windows x64 (exe) 二、安裝 三、啟動 首次安裝啟動 非首次安裝啟動

Performance API 性能上報

以下是關于 Performance API 性能上報的基本知識點總結: 一、性能監控核心指標體系 1. 關鍵性能指標(Web Vitals) 指標標準采集方式健康閾值LCP (最大內容繪制)測量加載性能PerformanceObserver≤2.5sFID (首次輸入延遲)測量交互響應PerformanceObserver≤100msCLS (累積布…

C語言-指針(一)

目錄 指針 內存 概念 指針變量 取地址操作符&#xff08;&&#xff09; 操作符“ * ” 指針變量的大小 注意 指針類型的意義 作用 void * 指針 const修飾指針變量 const放在*前 const放在*后 雙重const修飾 指針的運算 1.指針 - 整數 2.指針 - 指針 3.指…

華為云Astro大屏連接器創建操作實例:抽取物聯網iotda影子設備數據的連接器創建

目錄 樣圖(API連接器創建成功) 說明 操作場景(以Astro大屏抽取iotda影子參數為例) 實際操作步驟 新建連接器 設置基本信息。 接口鑒權方式,支持API鑒權、AK/SK、API Key和無身份驗證 無身份驗證 AK/SK認證(目前暫不能用) API Key認證(第三方使用) API鑒權認…

【硬件系統架構】哈佛架構

一、引言 在計算機科學的浩瀚宇宙中&#xff0c;計算機體系結構猶如星辰般繁多且各有獨特光芒。哈佛架構便是其中一顆耀眼的明星&#xff0c;它在眾多計算機體系結構中占據著獨特而重要的地位。從計算機技術的萌芽期一路走來&#xff0c;哈佛架構不斷發展演變&#xff0c;在不同…

華為eNSP:IS-IS認證

一、什么是IS-IS認證&#xff1f; 華為eNSP中的IS-IS認證 IS-IS認證是華為eNSP網絡中用于保障中間系統到中間系統&#xff08;IS-IS&#xff09;協議通信安全性的核心機制&#xff0c;通過身份驗證和數據完整性校驗防止非法路由信息注入或篡改。其實現方式與關鍵特性如下&…