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

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

[复制链接]

556

主题

688

回帖

4727

积分

管理员

积分
4727
QQ
发表于 2023-5-23 09:09:35 来自手机 | 显示全部楼层 |阅读模式
要在Windows的NGINX下部署Ghost博客系统,需要执行以下步骤:5 I; C* G  S/ j$ n7 P+ V
- G6 q; D) Y. \$ L+ E
步骤1:安装Node.js
! d  l7 U$ S- d, W' i2 q4 k2 Z5 g7 q9 H7 M# r0 e
在Windows上安装Node.js。这是一个基于JavaScript的服务器端开发环境,使Ghost能够运行。
5 |' L2 Y+ Y+ a
8 f8 i  g; k0 U) p步骤2:安装Ghost4 \- h5 s6 A! |

! z  |5 `' Y/ K# ^/ W! e5 C" X在Ghost官方网站上下载最新版本的Ghost。解压缩下载的文件并移动到想要安装Ghost的文件夹。然后通过命令行运行`npm install --production`以安装所有必要的依赖项。
+ T& G# F/ _3 ?7 x; Q6 p1 I. R3 d$ E) p' |$ V; d& p
步骤3:配置NGINX; d# V% A- W6 S. |( R5 e" ~
$ k/ B" C; \. b2 y% Q1 P. Z) X
安装NGINX。打开文件夹,找到“conf”目录,并编辑nginx.conf文件。在http部分的末尾添加以下内容:* |+ `. m, ?2 C3 `6 s2 _3 Y3 {
. y  j9 b3 Y, [3 }. G! A- V/ Y  T
```nginx2 A8 |! e$ v5 N* d
server {
  j! `; [/ b8 U, e. y    listen 80;
: ~( N1 g8 ]9 G! B' F    server_name your-domain.com;& {2 U) a1 o( h3 g; B" F
2 m' Y* y& H; P8 C; i
    location / {
9 F3 d* Q/ q8 W        proxy_set_header X-Real-IP $remote_addr;
2 [9 @- H! e2 p6 l+ n- C        proxy_set_header Host $http_host;
+ {( u3 Y% l8 p% K& U        proxy_pass http://127.0.0.1:2368;' S# i. z8 B7 S4 ?
    }5 ?9 N- o$ D) [8 h% _
}& L5 m, _5 Y" [( U; p& c1 H4 l6 j
```
. k& K6 x  g. t% }7 O' Q
( Y) }, m: c- H, h4 m5 _将“your-domain.com”替换为你的域名。这样,所有通过http://your-domain.com的访问都将被定向到Ghost服务器的2368端口。% u$ z/ ~& X8 R% }0 l4 Y
1 ]8 }5 L* a& s9 V( D  W2 D
步骤4:启动Ghost9 ]7 z7 M& n  H# w
7 X( w- E1 X& C& b; P9 [
在Ghost程序文件所在的文件夹中打开命令行,输入`npm start --production`以启动Ghost。现在你可以在浏览器中访问http://your-domain.com。应该可以看到Ghost的欢迎界面。+ u& P/ F9 Q1 L: ], Q7 t

$ o* V$ M, Y; g4 f+ F, L默認情況下Ghost将運行在http://localhost:2368上,但是馬上通過Nginx反向代理縮短Ghost的網址,讓Ghost運行在http://your-domain.com上。
4 p0 W' h5 N* C( X# [( l" O7 k# g6 v6 \. t9 [6 x
这就是在Windows的NGINX下部署Ghost博客系统的简单步骤和路径。
欢迎定制:13928122889
回复

使用道具 举报

556

主题

688

回帖

4727

积分

管理员

积分
4727
QQ
 楼主| 发表于 2023-5-23 09:10:10 来自手机 | 显示全部楼层
在nginx的配置中,需要指定ghost的目录吗?或者说应该指向哪个ghost网站目录?
( @1 F5 R" X3 a* I7 _" H
0 C) c8 P: |/ @* {% N在Nginx的配置中,需要指定Ghost的目录或位置,通常需要指定Ghost的主目录。这个主目录通常是Ghost程序包的根目录,即你在步骤2中解压缩的Ghost文件。
+ Q" A/ l0 g) T- |9 g- d
, ?8 q. E2 `3 h# d% P在步骤3中,我们通过添加以下内容来指定Ghost的位置:
& ?# v7 y( G+ a- B4 T
! j- M. S8 j3 U( b2 }  s7 m```nginx
: j# h& K7 A# H6 K( T9 }location / {
" }7 G$ a2 b0 J2 w6 Z    proxy_set_header X-Real-IP $remote_addr;! T( Z( z5 O/ b7 x2 h, g  d  h
    proxy_set_header Host $http_host;, j! o( [  Z+ V. d1 u
    proxy_pass http://127.0.0.1:2368;! W$ H! h$ I: `8 O, _2 B
}
5 W# {) V% ^7 `8 a) j' m7 E: V" [```) s3 ^. d/ q0 [2 {3 a. W
7 w. x0 K: g6 x  s( F2 I9 l
在这里我们使用`proxy_pass`指令来设置Ghost的目录。这里指定的默认值是`http://127.0.0.1:2368`,对应着Ghost的默认端口,这里的意思是把所有通过Nginx访问的请求都通过该地址转发到Ghost。" E+ P( r+ o$ d

0 P  }0 }1 P7 W. M3 {  o2 E如果你的Ghost是安装在其他位置,请将“proxy_pass”指向你的ghost安装目录。
9 J5 v9 J, X: g6 H; l5 T" I0 J1 D% h! l$ }3 o: g9 m' H
总结来说,只要在Nginx的配置文件中指定了Ghost的代理位置,即可让Nginx代理Ghost的请求,并将这些请求发送到Ghost的安装目录上。
欢迎定制:13928122889
回复

使用道具 举报

556

主题

688

回帖

4727

积分

管理员

积分
4727
QQ
 楼主| 发表于 2023-5-23 09:13:15 来自手机 | 显示全部楼层
如果ghost站点需要启用https访问,安装ssl证书的话,具体如何实现,需要做哪些设置?
' C1 I! G( o2 N$ F
5 [# R. J) O* L) o; u& a要在Ghost中启用HTTPS访问,需要有SSL证书,并进行许多配置。可以按照以下步骤来安装:
* ?# {$ p! O, b, U( @
. s* H/ x2 ]6 }, u) Y$ U步骤1:获取SSL证书
1 R6 I" s  j& @! Z; c0 C/ p! @5 ]/ B: ]+ Z+ A% _$ V3 c  `  K# ]
获取你想要使用的SSL证书,通常是购买或从免费的证书机构(如Let's Encrypt)获取。将SSL证书和密钥文件上传到服务器上。5 g! [- J) ~" U' e5 p& @3 `

! t$ R/ c& N1 I, \/ Z; m5 Q4 \步骤2:修改Nginx配置文件3 M  S; x1 ]- T) e7 k

, v, {) R( `# c' H8 c打开Nginx的配置文件,将http部分的内容更改为如下内容:7 m+ l" ?+ n: c0 |4 k
$ c2 |. S1 P) V6 p+ }( P5 d2 k
```nginx
7 Y6 s) C. ~9 P- e( xserver {
/ r& ]7 j- B4 ^. _4 B    listen 80;# h5 [( m, u% a" O
    server_name your-domain.com;
9 R4 [8 S7 z2 z9 @% q1 r* H    return 301 https://$server_name$request_uri;
) A8 \: Y; @# H3 L/ l- ]6 M! \}
( x9 E0 W  Y+ m6 l* C( d0 v3 P, i( o5 `; |" p" t8 I& `( H
server {( R2 Y7 ?5 Y& @# k  J
    listen 443 ssl;
  `* A9 l. |0 X8 J6 m    server_name your-domain.com;& C' o' {# z- @0 H

+ u" H4 E2 O1 M  c3 J5 |    ssl_certificate /path/to/ssl.crt;
$ T" ^& b/ z7 R3 t; c6 J. M$ s8 [    ssl_certificate_key /path/to/ssl.key;
# I; p$ n: B" X' ~0 t
* J: @) @' P" W1 y, S% r    location / {
8 X% {7 U  v& a2 d/ `1 E        proxy_set_header X-Real-IP $remote_addr;
8 r  x: q1 k9 T5 O5 n6 I        proxy_set_header Host $http_host;9 D: g* c, z. |. D4 }
        proxy_pass http://127.0.0.1:2368;# {7 X5 d4 V/ Q) C, r* H- U( p1 J) {
    }' e+ v) G7 B! y2 a) g" b
}6 L5 l" |9 E* e5 f, f/ q2 L0 |4 y" K
```! `! ~! t8 |: @! n; Q5 R# _/ M
这里我们在http部分新增了一个重定向。如果用户访问http协议的域名地址,就把请求重定向到https协议上的域名地址。
. p9 V& G, h: `- I- j) l; v% i& l
接下来,我们配置HTTPS服务器。# f4 q0 j1 ]: ^% w1 j

9 ?5 }+ P9 k1 d$ x# w. [首先我们配置服务器监听的端口为443,在 server_name 后面指定你的域名。
$ s% R# D& V, N/ k2 z5 Y! k' i/ u
然后设定 ssl_certificate 和 ssl_certificate_key 分别指向证书和密钥文件。这里的证书和密钥文件应该放在一个非常安全的位置。+ d2 k2 D3 C1 H% H7 u' I" k
) M7 A4 ^/ q' x
最后,用location指令将所有请求转发到Ghost的本地端口。! ~1 c  S+ I% ?% p+ K

  J* Z; m; x) j5 I0 e# ?- }2 Y步骤3:重启Nginx服务器. t: P: B6 i. S$ L
8 S8 t3 s# v+ W( w& ~) }
使用以下命令在服务器上重启Nginx:! U+ S& p- C1 N% L

' _3 E0 i: ^9 k5 s' F- l7 s. z```bash
! i0 Y/ }5 ]. [+ zsudo service nginx restart
4 \' `3 z# _: R9 r6 ````
; m7 s5 h9 X# E" R+ {1 g* y3 I/ M2 ^7 O/ Y9 k9 }5 R! u
步骤4:测试# P$ ^. p2 H9 T- S$ l) ?' ^5 P

9 t/ F& Y9 k- Y+ q现在你可以访问https://your-domain.com,此时应该可以看到浏览器地址栏中有一个锁形的图标,这表示你的站点已经成功启用SSL证书。
9 p9 b8 \/ u5 m4 ?5 G  U# b3 C- w# O* K& S
这样就完成了将Ghost网站启用HTTPS访问,这个过程可能会有一些细节问题,如果您在安装中遇到问题,可以根据错误提示进行排查。
欢迎定制:13928122889
回复

使用道具 举报

556

主题

688

回帖

4727

积分

管理员

积分
4727
QQ
 楼主| 发表于 2023-5-23 09:21:58 来自手机 | 显示全部楼层
在windows下如何启动和重新启动,或停止nginx?5 y# ~, Y5 ^# {) g# v4 a7 b, M

$ e8 ?) z3 e2 |5 |在Windows下启动、重新启动和停止Nginx,可以执行以下操作:
6 V5 B! z& D" f! A( A5 @1 U2 g$ C1 M2 a' X, }1 v
启动:, h! c' {4 n* M) L9 K) S/ c
; m% A  E% U6 d% J' P6 N9 Y- s
1. 打开命令行,进入Nginx安装目录,例如:`cd C:\nginx`
7 N4 ?8 D0 \) {& ]$ j2. 输入命令`start nginx`6 Z9 D9 X% v8 {  H& F+ c$ E" \
$ w+ v' L; Q! k) j' o2 U0 N& n
重新启动:
! n! W% t1 `7 B5 H
7 D+ H) F6 i( M6 d8 x* i1. 同样进入Nginx安装目录
  x6 ]. j( ~/ R1 x( B0 z1 Z2. 输入命令`nginx -s reload`
, _: M' o" P. N% P$ l; }* l" O0 O+ D) K6 b9 r) ]0 f' o
停止:; d& G/ h* B) f3 \0 s

/ O/ K4 ]  P$ {/ j6 t. W5 M1. 同样进入Nginx安装目录! l% t- T7 {& n' _4 t1 T, C
2. 输入命令`nginx -s stop`
+ O! E5 i% ~- ^, Z2 `( `
7 b- r1 s, p$ g& i需要注意的是,如果你在Windows上使用了Nginx的“Windows Service”服务,那么也可以在“服务”(Service)菜单项中找到Nginx的服务,直接通过“启动”、“重新启动”、“停止”等来操作它。: ?0 J" L. z( s4 C4 S! E

% @+ M1 y/ c& [. b! d总之,这些命令将启动Nginx服务器以供使用,重启或停止它。做出更改后,要确保在启动或重新加载Nginx之前测试一下配置更改。
欢迎定制:13928122889
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-7-12 07:56 , Processed in 0.014010 second(s), 3 queries , Redis On.

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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