找回密码
 立即注册
查看: 2860|回复: 3

在windows的nginx下部署ghost博客系统的详细步骤和路径是怎么样的?

[复制链接]

430

主题

615

回帖

4155

积分

管理员

积分
4155
QQ
发表于 2023-5-23 09:09:35 来自手机 | 显示全部楼层 |阅读模式
要在Windows的NGINX下部署Ghost博客系统,需要执行以下步骤:( M1 q8 T9 M$ L' Y1 h) b
6 i+ `6 W# [( P5 j" L7 |
步骤1:安装Node.js
. C& ~4 X) ]1 J% c4 X% B, N: ~
4 O3 S# v/ \6 A7 [在Windows上安装Node.js。这是一个基于JavaScript的服务器端开发环境,使Ghost能够运行。
3 q6 o# x/ }% i/ M; g" p, J+ O$ a% C7 J! A- g
步骤2:安装Ghost
) |2 X! T+ I' t: F9 m1 n) C1 M% m! t, f" n4 C0 t$ M* |9 W) |
在Ghost官方网站上下载最新版本的Ghost。解压缩下载的文件并移动到想要安装Ghost的文件夹。然后通过命令行运行`npm install --production`以安装所有必要的依赖项。! {4 `2 E" M2 l& W1 i+ V
' x) B4 V6 N* k# P: I: j% l( b
步骤3:配置NGINX
* ~2 N. D( j3 z# v& W9 h6 K" E5 K) q% t# }8 e" L* Y
安装NGINX。打开文件夹,找到“conf”目录,并编辑nginx.conf文件。在http部分的末尾添加以下内容:
- M3 I5 }) D- q- _9 v# a
5 ~9 G" V' f, m  Q$ J```nginx9 r7 Y! |; R  w# Q
server {
# i% W4 F2 X+ g5 H; x1 L) y    listen 80;. W# g7 G/ ]% V% l% e" h! H& f
    server_name your-domain.com;& x# u* d5 i+ W, x& S; }9 N
2 A; i7 y& T8 b% R
    location / {
: ]6 R* I( R$ y# f        proxy_set_header X-Real-IP $remote_addr;
% y7 d* E3 B8 B) s8 P; u% q        proxy_set_header Host $http_host;) r3 f. C& z' b& y0 z3 v
        proxy_pass http://127.0.0.1:2368;
  M- q; l4 k/ z. K    }0 |" ?  j- m+ X: K' I
}$ y7 e4 p1 h) ^: g
```
( Z$ s# ^7 o, `! l# [& {( K: i4 v; i0 W$ G5 T
将“your-domain.com”替换为你的域名。这样,所有通过http://your-domain.com的访问都将被定向到Ghost服务器的2368端口。
, p0 c% _5 K$ X8 J- c2 n( b! \( i: r; g! r/ T% n; P0 l
步骤4:启动Ghost
8 l! _3 A$ {3 P. d5 P
( J, n! ^+ ^# h( {9 [# V在Ghost程序文件所在的文件夹中打开命令行,输入`npm start --production`以启动Ghost。现在你可以在浏览器中访问http://your-domain.com。应该可以看到Ghost的欢迎界面。: \- }) g1 u, `
7 y+ b0 y; O; d' S' m2 w) ]
默認情況下Ghost将運行在http://localhost:2368上,但是馬上通過Nginx反向代理縮短Ghost的網址,讓Ghost運行在http://your-domain.com上。
' q6 l( O9 z$ P2 i) B
& K, j! A6 Z% }这就是在Windows的NGINX下部署Ghost博客系统的简单步骤和路径。
回复

使用道具 举报

430

主题

615

回帖

4155

积分

管理员

积分
4155
QQ
 楼主| 发表于 2023-5-23 09:10:10 来自手机 | 显示全部楼层
在nginx的配置中,需要指定ghost的目录吗?或者说应该指向哪个ghost网站目录?9 B6 v1 m3 X1 O0 |0 q
; k' ?4 _0 E) g
在Nginx的配置中,需要指定Ghost的目录或位置,通常需要指定Ghost的主目录。这个主目录通常是Ghost程序包的根目录,即你在步骤2中解压缩的Ghost文件。
" u  u; g3 v/ }1 S) o$ T2 ]+ v8 b% T  h
在步骤3中,我们通过添加以下内容来指定Ghost的位置:& |" ^+ V. u  P/ D" y

: U1 j+ A0 x. E```nginx
1 N8 C, s; z. Q# A" F; ylocation / {% _! T' ~% h: A, v  k4 D- t
    proxy_set_header X-Real-IP $remote_addr;$ ~# C1 \5 w3 y9 {6 u1 d) t
    proxy_set_header Host $http_host;6 e% Q4 S1 c2 V
    proxy_pass http://127.0.0.1:2368;& ^$ O: h8 W3 b; t
}) |0 M, q9 p( Z/ n/ V
```
& w7 b- u" l4 Q6 L
3 H( ], [; }  e4 _在这里我们使用`proxy_pass`指令来设置Ghost的目录。这里指定的默认值是`http://127.0.0.1:2368`,对应着Ghost的默认端口,这里的意思是把所有通过Nginx访问的请求都通过该地址转发到Ghost。( v; l. m5 J! o* m- [: ^4 G! x8 ]

: U7 ~% A% h. d# m9 V如果你的Ghost是安装在其他位置,请将“proxy_pass”指向你的ghost安装目录。
3 c' O% E. w; l
% q( u- g3 z4 ?6 y+ ?; t5 y/ ^总结来说,只要在Nginx的配置文件中指定了Ghost的代理位置,即可让Nginx代理Ghost的请求,并将这些请求发送到Ghost的安装目录上。
回复

使用道具 举报

430

主题

615

回帖

4155

积分

管理员

积分
4155
QQ
 楼主| 发表于 2023-5-23 09:13:15 来自手机 | 显示全部楼层
如果ghost站点需要启用https访问,安装ssl证书的话,具体如何实现,需要做哪些设置?
6 U6 T$ x8 ]  R
. G2 y% T4 Y' L& `* w# f7 t要在Ghost中启用HTTPS访问,需要有SSL证书,并进行许多配置。可以按照以下步骤来安装:/ V/ U, [) n+ E* R- _& n& \+ j
  Q. T  C4 Y7 A6 w; R/ q
步骤1:获取SSL证书9 I& x- X6 o+ Q9 p/ D' {3 W  N( b

& H+ |5 X* u- x2 r) U* n. s2 U9 ?获取你想要使用的SSL证书,通常是购买或从免费的证书机构(如Let's Encrypt)获取。将SSL证书和密钥文件上传到服务器上。$ U4 H9 V' d% Y) u" O; n( P. d: e# I0 x
& u; w2 p. r! |( f$ Q5 _8 e
步骤2:修改Nginx配置文件
/ g" @' Z( |% w2 V: |, ^/ I  ]; R
打开Nginx的配置文件,将http部分的内容更改为如下内容:
5 H& s9 W4 x: Y" w2 p( \8 K# c8 ^7 G1 J& J2 P" i3 ], {4 r
```nginx
' V, w* q7 d5 I3 Y: Dserver {
# V& u% O# d& |7 w: \    listen 80;2 p! z& h) K+ J) S5 x
    server_name your-domain.com;9 A- ^% t/ B& [0 P
    return 301 https://$server_name$request_uri;
$ F( n6 R- A( {! ?}
# u+ ]2 K. c: s5 Z" S0 x& Y- j, q( U, o, r: q% a$ j2 U+ y8 S7 g2 R
server {
' y7 R; d9 E! y# c    listen 443 ssl;$ Z2 o( a' B8 c
    server_name your-domain.com;
+ W) E+ R  ~0 F! P2 D5 r  ]
# e. x) r0 ]$ N# F7 l: z& r    ssl_certificate /path/to/ssl.crt;0 e: ^' j; i8 R8 t
    ssl_certificate_key /path/to/ssl.key;
( j0 O" t- C. H/ `8 N9 t3 A0 K+ v+ U* E# ^; M$ c4 A& L, R
    location / {
2 p& n7 P4 i" c' n        proxy_set_header X-Real-IP $remote_addr;
* W7 d$ F1 n3 \5 I, `        proxy_set_header Host $http_host;7 C4 ^1 Z6 N- r( J) k6 u9 u; d& ]
        proxy_pass http://127.0.0.1:2368;
! S- {1 W6 ]4 G' V  t4 [    }. Y! T% K3 d( K- y
}
0 ]0 y- _  @$ ?1 @7 I/ z```. r/ E8 u7 s+ V, H. r, T  X0 x
这里我们在http部分新增了一个重定向。如果用户访问http协议的域名地址,就把请求重定向到https协议上的域名地址。/ b. e! m, ?5 p: i! y  A

# x7 R  J$ I4 H  O接下来,我们配置HTTPS服务器。0 J5 o* q( v+ q! w

+ b1 P- t% R, w+ l/ J) o$ h首先我们配置服务器监听的端口为443,在 server_name 后面指定你的域名。
3 [) ^7 `2 ]( w4 q  W5 s/ S. ?
( K3 D6 p* r$ Q# J2 K8 A然后设定 ssl_certificate 和 ssl_certificate_key 分别指向证书和密钥文件。这里的证书和密钥文件应该放在一个非常安全的位置。
. }9 \/ u7 f" T: f$ T3 Y6 ^! G
( F5 G8 |; E: f) w, X7 b最后,用location指令将所有请求转发到Ghost的本地端口。7 a* x" M# a% \' w" t. x! M
+ `/ H8 C8 O+ n, @
步骤3:重启Nginx服务器0 o8 b3 _" A6 B: @9 Y: m

3 K3 t9 b) q+ h3 K$ T使用以下命令在服务器上重启Nginx:
4 G/ T6 X, q* Z6 b) l3 ?1 U! U) H0 H) ]
```bash
/ {1 x+ t  ]& v' z9 tsudo service nginx restart
7 s$ q5 T' Y- x# u& W```
# g$ l  C5 O4 e/ Q! g6 G, o5 n% W& Y5 }% w5 J+ I: A3 k1 S% A
步骤4:测试
* ]- Q" Y9 T! f" ^3 ]) a2 ^' M4 a. t1 \0 ]5 L" H. H. d% O# U/ d
现在你可以访问https://your-domain.com,此时应该可以看到浏览器地址栏中有一个锁形的图标,这表示你的站点已经成功启用SSL证书。" ?  P' V' r! T7 v

! L( r. Q0 _* G这样就完成了将Ghost网站启用HTTPS访问,这个过程可能会有一些细节问题,如果您在安装中遇到问题,可以根据错误提示进行排查。
回复

使用道具 举报

430

主题

615

回帖

4155

积分

管理员

积分
4155
QQ
 楼主| 发表于 2023-5-23 09:21:58 来自手机 | 显示全部楼层
在windows下如何启动和重新启动,或停止nginx?
1 f. k/ y9 s& U3 l; R
( q% j7 ]: L% s9 ^0 x在Windows下启动、重新启动和停止Nginx,可以执行以下操作:2 F# H8 z, ]& N% K2 C, r- Y4 @+ V! L
, e. k' T4 ~+ U/ y: i7 H
启动:7 P) B# F, R2 y( [# N8 X
8 i. Y# j* x+ o+ E
1. 打开命令行,进入Nginx安装目录,例如:`cd C:\nginx`9 w  Y# C0 j; l
2. 输入命令`start nginx`1 o9 f  }7 g; Y6 |4 c7 l
$ _+ @+ x8 d6 P( \& W2 P/ P2 Z
重新启动:
: f* D; ?2 d7 P  x, v4 p7 N& Z2 l& R+ [: s
1. 同样进入Nginx安装目录9 Q- D# L- P! G- `; w
2. 输入命令`nginx -s reload`
! s- w3 Q, `! c- t6 P  J5 @
0 I( P, a2 H, P2 D! b/ {1 k. u6 p, E停止:
( s+ |+ E9 _* j, I" e5 e" D+ t3 G1 z. t! f: a; M2 p3 V
1. 同样进入Nginx安装目录+ N  |+ K+ J" K$ I& h: X' K3 h
2. 输入命令`nginx -s stop`
7 D9 @# u6 V  s8 g- A1 u1 |1 c8 b( B
需要注意的是,如果你在Windows上使用了Nginx的“Windows Service”服务,那么也可以在“服务”(Service)菜单项中找到Nginx的服务,直接通过“启动”、“重新启动”、“停止”等来操作它。- \. K4 d3 B) o6 |- g

. f; Z+ B$ W1 `  Z总之,这些命令将启动Nginx服务器以供使用,重启或停止它。做出更改后,要确保在启动或重新加载Nginx之前测试一下配置更改。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|通达创业无忧交流社区 ( 粤ICP备2023021749号|粤公网安备 44030402006137号 )

GMT+8, 2026-5-9 20:20 , Processed in 0.021587 second(s), 20 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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