WordPress网站做了frp内网穿透之后,链接中的端口如何隐藏掉

 火... [复制链接]  100查看
易西 发表于 2026-6-18 17:43:39 | 显示全部楼层 |阅读模式
WordPress网站做了frp内网穿透之后,链接中的端口如何隐藏掉

+ d3 c0 s' O% b1 {( P! p/ t& Y
[发帖际遇]: 易西 乐于助人,奖励 9 贡献. 幸运榜 / 衰神榜
 楼主| 易西 发表于 2026-6-18 17:44:52 | 显示全部楼层
在使用WordPress网站并通过内网穿透(如使用FRP或类似工具)进行外部访问时,通常需要将网站链接中的端口隐藏,以使URL看起来更简洁和专业。这可以通过以下几种方法实现:& Y- q7 {3 T6 C
# u7 g3 _) A7 Y, r5 W
1. 使用反向代理服务器
) z/ z. X/ R% L- `8 w9 `8 q最常见的方法是使用反向代理服务器,如Nginx或Apache,将HTTP请求转发到运行在非标准端口(如80或443)上的WordPress实例。这样,你可以让外部访问使用HTTP或HTTPS协议的标准端口,而内部则保持使用FRP或其他穿透工具设置的非标准端口。
! ?7 a7 B( @; }. q7 e. E1 a
- X5 y% Y, P! H6 `步骤:: i" Z) A  ]/ e% y# d
‌安装并配置Nginx或Apache‌:. E; u8 u" f( E4 v0 \
% ~: m) _8 O! v: ^' S0 P& Y
如果你使用的是Nginx,可以在其配置文件中设置反向代理。* p, C, I' G/ q4 W7 K
示例配置(Nginx):2 i+ j: X! u+ d  ^$ ]6 m' F
nginx& p% K  A; l3 @
server {) h9 `1 `6 K5 ^" o/ t( C! _$ o
    listen 80;5 L% ?' H' W( L. Z" [+ u
    server_name yourdomain.com;6 q8 O9 i( h" U) d( D1 s1 Y, n3 i
0 B6 q$ c0 G  _$ e
    location / {
; @+ ~. ~. f& R+ ?( X        proxy_pass http://localhost:8080; # FRP穿透后的内网端口
% f! b  z) j$ }4 l        proxy_set_header Host $host;
% E; @4 K4 n4 B. `) E/ L        proxy_set_header X-Real-IP $remote_addr;7 `: X/ E1 O* }
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;9 [' P+ M- O6 I, E6 G
        proxy_set_header X-Forwarded-Proto $scheme;
1 t, h: y. P* u& I5 f3 ]% M, R    }
) o( g8 j) h3 c- J, e+ E/ R}; N! m2 ]7 L' {: ]* x. d
如果你使用的是Apache,可以通过mod_proxy模块配置反向代理。
+ |+ y4 N6 {3 b+ |/ X. n‌重启Nginx或Apache服务‌:: h4 V5 D' N9 N4 c  G

1 r& B$ z  O% W; c" G5 L( D, Qbash
6 V1 M" h* o: H- vsudo systemctl restart nginx  ~7 U8 a' j. }. Z- f
或者对于Apache:
$ _  J" N' p& _1 b6 S+ N8 ~/ X1 a7 r( Z, h: @7 b
bash7 ?( E- u# y. u) r7 F
sudo systemctl restart apache2
# [8 p+ h% N! G( _" Y# x4 W4 Z2. 使用FRP的子域名配置
6 }7 G3 s6 Z" s/ `如果你使用的是FRP,并且希望通过子域名访问网站,可以在FRP客户端配置中设置子域名。这样,外部访问的URL将包含子域名,而不直接显示端口号。
" b; J& _9 i/ z/ N% m1 {. H4 ?
! B5 }3 A3 x' H1 a4 q步骤:6 S7 J/ z6 R6 `6 p7 ~6 P
‌配置FRP客户端‌:
& B" r# W  n2 d; n: l
6 z8 K# }4 s( ]3 i在frpc.ini文件中添加或修改以下配置:
( G- M( M6 d1 ]' p6 U; jini
8 C6 H1 o5 Y, X# W% X- |% z[web], U3 V6 k) e/ W& {' j1 {
type = http
) Y( e1 `; @5 `, J. A7 Hlocal_ip = 127.0.0.1
" d( d& R7 R9 e  T, h2 M9 mlocal_port = 8080 # WordPress实际运行的端口
. |+ S3 I/ w2 A6 L. Xsubdomain = yoursubdomain
0 [% O$ F4 m/ x- a( \2 ]) Q) o; ^其中yoursubdomain是你希望使用的子域名。
) D3 F5 v# D- J) x4 C# a6 g4 [/ I+ X' y- ~' v
‌重启FRP客户端‌:
- U  n  Y$ c8 p$ {
/ U2 v. }4 Z  d2 hbash5 T9 P! g0 I1 w" u' o/ q
./frpc -c ./frpc.ini! ^3 u& L5 l/ h# A
‌DNS解析‌:确保你的DNS记录指向了FRP服务器提供的IP地址,并且该子域名已经正确设置。: \2 y9 B3 r; ]9 }

/ Q( W! i# s# B5 K4 G( ]通过上述任一方法,你都可以隐藏掉WordPress网站链接中的端口号,使URL看起来更加专业和简洁。
) ?& K1 q8 t' I% x4 z2 ~; i
: m) U6 G: G. y$ B. Y# @7 k参考
[发帖际遇]: 易西 被钱袋砸中进医院,看病花了 5 金钱. 幸运榜 / 衰神榜
 楼主| 易西 发表于 2026-6-18 17:47:47 | 显示全部楼层
要隐藏WordPress网站frp内网穿透后链接中的端口号,核心思路是通过反向代理将非标准端口的流量映射到浏览器默认隐藏的80(HTTP)或443(HTTPS)端口,以下是具体可落地的方案:& S  Y% {" q* E5 Z7 M9 }

6 r& i; I/ e) H一、核心配置方案:Frp + Nginx反向代理
7 Q/ ~$ W5 m, M‌Frp服务端基础配置‌
3 ]; u+ w4 ~* U8 ]在云服务器的frps.ini中,设置专用的HTTP/HTTPS穿透端口,例如:
$ x7 ^0 x) q! W4 @8 G$ Pini
$ c) c( O% t% p. _/ B, J[common]
! ]* A  A4 h- {3 R& e3 rbindPort = 7000
4 z! N# w. _3 i1 }) u# Y8 P9 qvhostHTTPPort = 7788# k" }8 }, i+ s- L. b* t
vhostHTTPSPort = 7789
) n# u, }+ G9 r8 ?该端口用于接收frpc转发的内网WordPress流量,不直接对外暴露给用户访问。
( O6 g1 q1 g) C3 F+ J
8 j' D7 W; S0 k; h" G6 K' V: s‌Nginx反向代理配置‌7 P4 K% `1 v9 Z
在云服务器的Nginx中添加站点配置,监听80/443端口,将请求转发到frp的vhost端口:
* x5 j0 A. c* _: i' M0 Q6 hnginx; Y) ?8 g/ T; r1 n
server {
7 X# \6 z# B7 u    listen 80;
& \$ D: Q: l5 G$ F3 A0 ?    server_name 你的域名.com;2 ~& j' u" i$ p" F+ a5 I
    location / {
9 a( _6 m4 d7 _& \; J3 h        proxy_pass http://127.0.0.1:7788;3 t! c9 W, w9 P2 R
        proxy_set_header Host $host;4 j0 P/ @7 M( _) N7 G) P
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
7 c+ t1 F8 J( l    }, F( k& ?+ @7 s
}
% |7 ^' z9 H7 N  D2 b6 e配置HTTPS时可直接复用该逻辑,监听443端口并配置SSL证书,实现无端口的HTTPS访问。
: f3 u9 Y9 l2 G+ W$ n6 O" y
" N& ^( r3 ?& y+ U0 y+ D' T‌解决WordPress自带端口残留问题‌" u" I) E% X; V4 R6 q0 ^
WordPress会在数据库wp-options表的siteurl和home字段中存储建站时的带端口地址,导致跳转时端口重新出现。你可以直接在wp-config.php中添加以下代码强制修正地址:
8 ^& U0 p8 x. ?php
( T/ p& H6 E  q1 q3 X8 @define( 'WP_HOME', 'http://你的域名.com' );
8 k3 K( g# H% e/ k9 C- b9 mdefine( 'WP_SITEURL', 'http://你的域名.com' );& B) o2 A3 X. L) h+ I' @
推荐先配置好Nginx反向代理,再初始化WordPress站点,从根源避免数据库写入带端口的地址。
/ x. j5 |0 G; f) w& a% q
' u) F- \) }+ f5 {2 I) F- V1 k6 A二、简化方案:宝塔面板反向代理. ^# K; D: @) P4 M9 V% O* f
如果使用宝塔面板管理云服务器,操作会更便捷:" F0 y( k  E5 j6 ~0 \/ M. O  j- _0 k

. V( |9 u5 W8 }* a1 ~1 d' f, x在宝塔中添加指向你域名的站点,申请Let's Encrypt免费SSL证书并开启强制HTTPS;
/ V' Y6 I$ l6 H$ G1 j在站点的「反向代理」页面添加规则,目标URL填写http://127.0.0.1:7788(即frp的vhostHTTPPort);
( H0 h2 [- C+ {/ P保存配置后,直接通过域名访问即可自动隐藏所有端口号。1 e7 `8 g9 G; C9 z. b* }. }) z
三、替代方案:Cloudflare Tunnel
, L! @$ a- d  b& H无需自行配置frp和Nginx,通过Cloudflare的加密隧道直接将内网WordPress服务暴露到公网,全程不开放任何高位端口,天然实现零端口暴露,还自带DDoS防护和全站HTTPS,适合没有备案域名的场景使用。$ r' j. h+ I6 C4 a6 d4 q+ m
% R! Z: `' ?9 n1 K
需要我为你提供一份可直接复制使用的完整Nginx配置和WordPress数据库清理步骤吗?
( D8 s' m' s7 g9 `: E* ?4 b" }- ~% o; c9 _  s, X7 ?
参考
 楼主| 易西 发表于 2026-6-18 18:00:26 | 显示全部楼层
结合你之前遇到的重定向循环问题,给你两种‌零复杂配置、直接生效‌的极简方案,不用改Nginx和WordPress数据库,就能直接隐藏链接端口:
9 }3 [, ]! A, `& j) m8 Z/ c3 Z& }; d7 J
1. 「一键生效」Frp原生极简方案
: `' t% Q1 ~. G2 `6 T  i直接修改云服务器frps配置,把vhostHTTPPort改成‌80端口‌:
+ I7 [$ n) d6 \5 n0 i- A0 z9 S0 j! C4 X# Y
ini
8 \. l- A2 Z. g' d& H[common]9 Y* K0 S8 N) t' y# P+ J
bindPort = 7000" V* X# r  @1 d$ i
vhostHTTPPort = 808 B- j* P( X, c4 \
重启frp服务后,直接用域名访问,浏览器会自动省略默认80端口,完全不用额外配置反向代理,复制链接也不会带出端口号。
$ }/ o" E( E0 N! y/ ^& f* [如果需要HTTPS,把vhostHTTPSPort改成443即可,浏览器同样会自动隐藏该端口。  s! i( |% q; P, d9 D
# G7 j: z4 o- ^% N( \1 N
2. 「零配置」Cloudflare Tunnel方案
; d0 z7 T6 |( i6 Z9 Q7 M完全不用自己折腾frp端口和Nginx,直接用Cloudflare免费隧道:
, T  |9 E, s  y% f% H, K2 t6 X安装cloudflared客户端后,一键绑定你的域名,流量直接走Cloudflare的443加密通道,全程没有任何端口暴露,复制出来的链接就是纯域名格式,自带HTTPS,连服务器端口都不用额外开放。
/ j- h% q. |. \& ?
) ~4 P& @4 r0 I8 }这两种方案都不会触发WordPress的重定向循环,操作步骤不超过3步,是目前能最快实现隐藏端口的办法。
3 M) B$ ~; ?) x3 |$ I+ ~) o1 }% Y/ I2 ]+ q- k* Z# }$ l  e
需要我给你一份3行就能跑完的frp端口修改重启命令清单吗?0 y. o/ Z4 \" i

3 J) ]! c. g( i: m参考
 楼主| 易西 发表于 2026-6-18 19:23:53 | 显示全部楼层
要隐藏WordPress网站frp内网穿透后链接中的端口号,核心思路是通过反向代理将非标准端口的流量映射到浏览器默认隐藏的80(HTTP)或443(HTTPS)端口,以下是具体可落地的方案:
8 X$ D; U- ~& q& m2 Q1 U
7 ?. C8 Y2 u! H7 R- b' ]2 ?一、核心配置方案:Frp + Nginx反向代理# ~' ^4 [' H; h: Q. O, A# L3 w& k
‌Frp服务端基础配置‌
8 C( C1 ^' J4 e; w, z3 R在云服务器的frps.ini中,设置专用的HTTP/HTTPS穿透端口,例如:4 K9 R/ U7 g$ j- T* L0 _
ini
' i) g7 x7 y2 L3 m: i" k[common]# Z8 h. W+ g* h0 L& @1 [. N
bindPort = 7000) |* d5 @5 z- @- C+ U
vhostHTTPPort = 77886 H$ D4 w! N$ w/ B2 {4 u5 o
vhostHTTPSPort = 7789
2 Y* T' f5 q4 D3 {8 D该端口用于接收frpc转发的内网WordPress流量,不直接对外暴露给用户访问。
/ {+ c4 ~8 y) _8 R; B4 k# ^0 v7 x; \$ N- u
‌Nginx反向代理配置‌% \& K. Z2 V1 j6 e  W
在云服务器的Nginx中添加站点配置,监听80/443端口,将请求转发到frp的vhost端口:8 {" m7 k! g  P9 P/ o+ r4 g
nginx
6 J$ g$ B+ [4 a3 X  i0 Eserver {. r1 T/ B; \6 W* Y9 ?( c
    listen 80;3 b0 V7 t4 J. Z! L
    server_name 你的域名.com;
0 h7 F, E! \" n. R    location / {. j( S  N2 J# b( e5 U5 t
        proxy_pass http://127.0.0.1:7788;! ]$ @- {2 m* g
        proxy_set_header Host $host;4 s' y4 S$ b1 u4 A& g+ N) Q
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
) f* O) M. y/ [- i% J& ~) W    }, S' s9 {# ^# N) R. m: a) a
}% K9 D6 R* y% J, U0 k% d, w9 r
配置HTTPS时可直接复用该逻辑,监听443端口并配置SSL证书,实现无端口的HTTPS访问。/ a. V2 q- t5 I; i- l! E
8 t$ B4 m  b# v0 m# R7 J5 H% H
‌解决WordPress自带端口残留问题‌
3 G7 Z' l0 g- ?2 OWordPress会在数据库wp-options表的siteurl和home字段中存储建站时的带端口地址,导致跳转时端口重新出现。你可以直接在wp-config.php中添加以下代码强制修正地址:
! V5 ^) @' S) E8 D# R8 O6 ^php
5 K( k1 \; S5 ?define( 'WP_HOME', 'http://你的域名.com' );8 Z9 y3 ?& f0 y7 _! G* @
define( 'WP_SITEURL', 'http://你的域名.com' );
, L/ m1 [" D$ v7 K2 V3 R* Z推荐先配置好Nginx反向代理,再初始化WordPress站点,从根源避免数据库写入带端口的地址。$ F2 x; |; V3 U- {- n7 w) M- e
" x, ~; b4 G/ n0 D% p( o% s0 K
二、简化方案:宝塔面板反向代理
* @  f4 u. A# \) q7 @如果使用宝塔面板管理云服务器,操作会更便捷:
: [- }+ j/ J* ?6 s% s) M: A* G5 k! E, F& J
在宝塔中添加指向你域名的站点,申请Let's Encrypt免费SSL证书并开启强制HTTPS;
' x( V" o: t2 k! L& }9 V) w在站点的「反向代理」页面添加规则,目标URL填写http://127.0.0.1:7788(即frp的vhostHTTPPort);
: ~/ e7 @' z0 R保存配置后,直接通过域名访问即可自动隐藏所有端口号。
7 K$ E5 j  A1 k# o# Y  K6 @三、替代方案:Cloudflare Tunnel$ |% w$ Y, g. W# k
无需自行配置frp和Nginx,通过Cloudflare的加密隧道直接将内网WordPress服务暴露到公网,全程不开放任何高位端口,天然实现零端口暴露,还自带DDoS防护和全站HTTPS,适合没有备案域名的场景使用。
" G4 z2 G7 s1 u* W" L6 c* o* w/ X1 O* T7 t" g
参考
[发帖际遇]: 一个袋子砸在了 易西 头上,易西 赚了 5 金钱. 幸运榜 / 衰神榜
 楼主| 易西 发表于 2026-6-18 19:27:25 | 显示全部楼层
你遇到的情况非常典型:‌其他系统(如静态网页、Java/Python应用)隐藏端口只需 Nginx 反向代理即可,但 WordPress 会“强制”显示端口,是因为 WordPress 自身逻辑在生成链接时,强行从数据库中读取了带端口的旧地址,或者错误判断了当前协议和主机名。‌; Q$ U; }- Y* l( l* o( O* O, F
# E) J9 {! F+ H) R3 l
简单来说,Nginx 把请求转发进去了,但 WordPress 返回给浏览器的 HTML 代码里,所有的 <a href>、<img src> 甚至重定向(301/302)地址里都写着 http://域名:端口。浏览器拿到这个地址后,自然就会显示出端口。
, `4 M. n; W: E1 ]% d/ d( r" n5 m* z% D0 d" h$ s3 k+ z0 f0 N' i
要彻底解决 WordPress 的“强制显示端口”问题,必须‌在 WordPress 内部层面‌进行修正,而不仅仅是在服务器层面做代理。请按照以下三个步骤操作,缺一不可:
- m2 e( h3 E# K/ `; }
: ^! f3 b6 A1 t! P' K7 s第一步:修改 wp-config.php(最核心步骤)
6 }6 H$ `* g  O' T# E7 t这是解决 WordPress “顽固”显示端口的最有效方法。通过定义常量,强制 WordPress 忽略数据库中的旧设置,动态使用当前访问的域名和协议。4 B, K( E& Z; w
( a8 I' N$ G" U/ M# X- ~6 W
请在你的 WordPress 根目录下的 wp-config.php 文件中,找到 /* That's all, stop editing! Happy publishing. */ 这一行,‌在它之前‌添加以下代码:
, y9 o2 P6 r, l% r* V3 M
7 M* k+ t8 Y, l( v( R0 Ophp
( x- r- y8 ~9 n2 J7 n# f, E& \/** 强制修正站点地址,解决内网穿透端口显示问题 */
% e# P* R6 Q$ s/ r1 k, o. C- k4 fif (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https') {, @: f: G$ s- n, r( c; ?
    $_SERVER['HTTPS'] = 'on';
! M3 ?) T/ u& d8 a9 m1 f6 [}
# \+ z0 f- H+ X" [2 ^0 l3 U  n- r$ N: d/ _0 U
// 动态获取当前访问的主机名(域名),自动隐藏端口; \* u* v, o9 v$ M/ L/ |
define('WP_HOME', 'http://' . $_SERVER['HTTP_HOST']);7 k2 `# m' f0 [1 m* S: R0 d+ {
define('WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST']);
- F9 Y4 Q' u$ A& J( r0 v& a* Z' _, s2 G/ }; O7 r
// 如果你配置了 HTTPS,请将上面的 http 改为 https0 ]; R/ e7 x, f* i4 e+ y
// define('WP_HOME', 'https://' . $_SERVER['HTTP_HOST']);
. _' m2 b' @9 B' B5 B# @// define('WP_SITEURL', 'https://' . $_SERVER['HTTP_HOST']);
2 }$ _" i6 Y/ t1 ^% y5 N' b. m‌原理解释:‌
+ z# U/ {4 |4 H. I3 ~- t7 d9 c( o' Q) ^! f
$_SERVER['HTTP_HOST'] 会获取用户浏览器实际访问的域名(例如 example.com),而不包含端口(因为浏览器访问标准80/443端口时不显示端口)。
7 F# Z' Z$ T+ |; r+ V0 M6 [通过 define 强制覆盖数据库中的 siteurl 和 home 值,WordPress 生成所有链接时都会使用这个动态获取的无端口域名。
5 O- P1 [# }. K( N4 d  k% e  d8 E第二步:清理数据库中残留的端口信息" b: Y9 ]# D! \; K3 E7 C) @+ a$ F
即使做了第一步,数据库中可能还残留着旧的带端口的 URL,导致某些插件或硬编码的链接依然显示端口。0 I4 G& p5 j8 J' F" e

$ S7 [* |  Z& O' c2 A; B: D登录 phpMyAdmin 或使用命令行进入 MySQL。
  j* B! i# Q# L/ d  B  d2 S执行以下 SQL 语句,将数据库中所有带端口的旧地址替换为新的无端口地址(请根据实际情况修改域名):
- x9 u1 ~& @( Q8 S4 s0 t+ [* Bsql% F' W1 X' s+ m4 y! {- I
-- 假设你的域名是 example.com,旧地址是 example.com:80809 X6 q! F" N1 |' h. \- g2 X' X6 o. s
UPDATE wp_options SET option_value = replace(option_value, 'http://example.com:8080', 'http://example.com') WHERE option_name = 'home' OR option_name = 'siteurl';: f2 G' a' B) C" B+ F0 j

0 q4 g/ Z$ ]/ I. t" f) P* D-- 替换文章内容和元数据中的链接
" g: g$ f, |& M* D) n4 ]$ F7 P5 GUPDATE wp_posts SET post_content = replace(post_content, 'http://example.com:8080', 'http://example.com');
' K& F1 _# G' }# H2 V( _) B& BUPDATE wp_postmeta SET meta_value = replace(meta_value, 'http://example.com:8080', 'http://example.com');
. c0 c! |- D" |3 M注意:如果你的表前缀不是 wp_,请修改为实际的前缀。' M! g" o4 R9 u+ o# i* m

+ T# ^9 ^1 A) F2 A7 n/ _第三步:检查 Nginx 反向代理配置(确保头信息正确传递)
) a' Z0 Z7 I; A6 n# |1 ^( o为了确保 WordPress 能正确识别协议(HTTP/HTTPS),Nginx 的配置必须包含 X-Forwarded-Proto 头。' L* f' R# g  R/ U; K

! g( H: [& q9 J5 J! f0 z: ^' y你的 Nginx 配置应该类似这样:
5 E3 Q  e) o* |' m! }2 N) j# S% [7 q. _# C, U. x- a
nginx% Y- g' Z9 U. F7 q3 D
server {
4 Z( [3 n3 O- ?+ B: }! B    listen 80;
4 h; |) W9 M& d: M$ a    server_name your-domain.com; # 你的域名; x6 I7 m& B+ |9 n
( _% ^# }. L% w' D5 F  v
    location / {
2 w8 r0 z& C1 F8 G8 z5 o        # 指向 frp 监听的 vhostHTTPPort 或本地 WordPress 端口
  h/ j8 e& X7 k        proxy_pass http://127.0.0.1:7788;
3 o9 }, C8 J' ~! H! R$ C6 O$ c        & \7 @+ g- R1 Q& E* o/ k
        # 关键头信息,必须包含
7 F6 a1 V( [5 B* Q" `, @& `# _        proxy_set_header Host $host;1 U/ r- J  y. L4 W! g
        proxy_set_header X-Real-IP $remote_addr;! j1 U3 Z" Q8 A, P1 p6 j6 L1 B; ?1 ?* L5 a
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;9 p0 `0 O- O- _/ i' V
        proxy_set_header X-Forwarded-Proto $scheme; # 告诉 WordPress 原始请求是 http 还是 https
( K* w! l* N: }2 ^6 P0 l( ^: o" O    }
- |, o0 ^3 C) v, |0 H+ w/ y}
7 {2 g4 X3 r8 {! {常见坑点排查, M; }- ]5 h* p! z
‌缓存问题‌:修改完 wp-config.php 后,务必清除浏览器缓存、WordPress 缓存插件(如 WP Super Cache、W3 Total Cache)以及 CDN 缓存。否则你可能看到的还是旧的带端口的页面。' k6 A3 P- B- [" g' j$ k2 x
‌HTTPS 混合内容‌:如果你使用了 HTTPS,但 WordPress 内部仍生成 HTTP 链接,浏览器会报错或显示不安全。确保 wp-config.php 中的 WP_HOME 和 WP_SITEURL 使用 https://,并且 Nginx 配置了 SSL 证书。
! w) s* D" J! i, p' f- s‌Frps 配置‌:确保 frps.ini 中的 vhostHTTPPort 和 vhostHTTPSPort 已设置,并且 Nginx 反向代理指向的是这些端口,而不是直接指向 WordPress 的本地端口(除非你直接在 frpc 中绑定了域名并使用了 vhost 模式)。
6 G$ i6 |& v6 q5 m$ n6 C‌总结:‌" Q( ?* y' F; K3 F" x3 R" ~' _
其他系统不显示端口是因为它们不存储“自我认知”的 URL,而 WordPress 存储了。通过 wp-config.php 中的 define('WP_HOME', 'http://' . $_SERVER['HTTP_HOST']); 这一行代码,你可以强制 WordPress “忘记”数据库中的带端口地址,从而彻底隐藏端口。5 r* J! U$ _! J; V8 @8 d

* z1 m' b$ ?* ?% L9 t参考
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

邮箱|首页|小黑屋|吾侪 ( 蜀ICP备2020029307号-4 )

GMT+8, 2026-8-28 15:19 , Processed in 0.055115 second(s), 23 queries .

Powered by Discuz! X3.5

Copyright © , 吾侪网

快速回复 返回顶部 返回列表