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

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

[复制链接]

319

主题

485

回帖

3133

积分

管理员

积分
3133
QQ
发表于 2023-5-23 09:09:35 来自手机 | 显示全部楼层 |阅读模式
要在Windows的NGINX下部署Ghost博客系统,需要执行以下步骤:
! D  V7 f) _: x6 L" f% [
& k0 u( F( m( q0 j# {步骤1:安装Node.js& i' G' T  C; W' @, `2 L; P
  N5 @: R6 N; o* T
在Windows上安装Node.js。这是一个基于JavaScript的服务器端开发环境,使Ghost能够运行。. \" h% o/ Z3 C+ h# r
8 a# e: P* r: F. r$ }1 w
步骤2:安装Ghost
4 k9 D/ e2 i6 ]- d7 h9 l0 Y
) ]! O5 e$ F8 Q在Ghost官方网站上下载最新版本的Ghost。解压缩下载的文件并移动到想要安装Ghost的文件夹。然后通过命令行运行`npm install --production`以安装所有必要的依赖项。
) _( j1 o' s0 ]1 S
  _: y" P9 e8 ]7 u1 h: k* `# s步骤3:配置NGINX& W1 z: B8 ~0 K6 j0 V) _
# D9 v$ b# M+ }9 d8 k% A
安装NGINX。打开文件夹,找到“conf”目录,并编辑nginx.conf文件。在http部分的末尾添加以下内容:
) u6 L# Y; S& P8 }
$ O6 q) y" k! D" ?" r% V' m```nginx, @- r8 ?& O& d4 E& G' T
server {
4 a1 V3 D& z) F" C' a6 k$ i    listen 80;, M: k! n1 x2 Y
    server_name your-domain.com;
) R9 {7 I! u2 @# R. m, P8 e0 r9 b- E+ `( p0 h. ]  m
    location / {
) z, w7 U# g) g4 V        proxy_set_header X-Real-IP $remote_addr;
. V" E4 s) d4 \: p* i        proxy_set_header Host $http_host;6 ^- g+ E; a% H6 E  o3 g; ~' j
        proxy_pass http://127.0.0.1:2368;6 ]* ^* ~+ f, u2 ]" H
    }8 X0 D+ q' S$ b& Q" m2 }
}
  V2 W, F3 R6 E# h$ Y+ w9 ?```' E. X0 I5 B" q$ i% T0 r
4 [% z' v2 o; l& n7 ^
将“your-domain.com”替换为你的域名。这样,所有通过http://your-domain.com的访问都将被定向到Ghost服务器的2368端口。
% B( }1 J0 x/ M: d, S+ G/ J8 j
9 G. F! a: o7 z步骤4:启动Ghost6 {) o, K) }1 c8 n: s

! m5 e9 o" M$ d# ?4 s! ?在Ghost程序文件所在的文件夹中打开命令行,输入`npm start --production`以启动Ghost。现在你可以在浏览器中访问http://your-domain.com。应该可以看到Ghost的欢迎界面。
: v2 J6 ^2 T) c8 M( @# X, D9 w: q+ R) c
默認情況下Ghost将運行在http://localhost:2368上,但是馬上通過Nginx反向代理縮短Ghost的網址,讓Ghost運行在http://your-domain.com上。
6 R9 @1 M* D1 S$ Q6 Z; i, x1 J$ i0 n4 t9 Q
这就是在Windows的NGINX下部署Ghost博客系统的简单步骤和路径。
回复

使用道具 举报

319

主题

485

回帖

3133

积分

管理员

积分
3133
QQ
 楼主| 发表于 2023-5-23 09:10:10 来自手机 | 显示全部楼层
在nginx的配置中,需要指定ghost的目录吗?或者说应该指向哪个ghost网站目录?
1 r  @" `1 E) R( o( V5 Z& H
6 M1 u. }; r8 M- ^7 p% B在Nginx的配置中,需要指定Ghost的目录或位置,通常需要指定Ghost的主目录。这个主目录通常是Ghost程序包的根目录,即你在步骤2中解压缩的Ghost文件。
* N3 i1 b! c  G1 m' m) w, d% ~! S& F3 g% q; ]& C
在步骤3中,我们通过添加以下内容来指定Ghost的位置:
7 Y6 i. U6 W( I% E( v  v* u
9 ]. ]2 b$ k( x' \% U! N```nginx" d; t% i$ S4 V: F" L! y: q
location / {& A2 P) V3 x2 \# \
    proxy_set_header X-Real-IP $remote_addr;
6 O5 n: S- i6 U) G/ l) V    proxy_set_header Host $http_host;
% h+ R5 r$ I) q2 B8 L    proxy_pass http://127.0.0.1:2368;5 W  M, G+ k. X% H' W
}3 Q2 K" G4 m% P& u* d7 Q
```) I% p0 c( m$ i& s

; B! ~1 [& g* e# @7 {6 o7 X在这里我们使用`proxy_pass`指令来设置Ghost的目录。这里指定的默认值是`http://127.0.0.1:2368`,对应着Ghost的默认端口,这里的意思是把所有通过Nginx访问的请求都通过该地址转发到Ghost。: k. X/ {! \* c

9 j3 S7 x+ a" g  y如果你的Ghost是安装在其他位置,请将“proxy_pass”指向你的ghost安装目录。
  |: ^1 q, d& J+ F; n( d$ A0 R6 ^
总结来说,只要在Nginx的配置文件中指定了Ghost的代理位置,即可让Nginx代理Ghost的请求,并将这些请求发送到Ghost的安装目录上。
回复

使用道具 举报

319

主题

485

回帖

3133

积分

管理员

积分
3133
QQ
 楼主| 发表于 2023-5-23 09:13:15 来自手机 | 显示全部楼层
如果ghost站点需要启用https访问,安装ssl证书的话,具体如何实现,需要做哪些设置?. ]1 A6 X( E6 {& I/ E; f
* F2 R! i2 s. r* c* @- c
要在Ghost中启用HTTPS访问,需要有SSL证书,并进行许多配置。可以按照以下步骤来安装:# X! H' ], j. m/ ?5 ^& \
. \' l1 b, z  q% H6 x" ^
步骤1:获取SSL证书
3 M: o8 a) j+ ?6 W
( e; G1 {# o: I, {; m( I获取你想要使用的SSL证书,通常是购买或从免费的证书机构(如Let's Encrypt)获取。将SSL证书和密钥文件上传到服务器上。
" u- h  y8 u) X6 }0 B! S4 M
9 L" X3 V( O2 m步骤2:修改Nginx配置文件
8 F; m6 q. s# A9 x- i+ K! k
/ V1 H6 n! y& L$ e* b3 L打开Nginx的配置文件,将http部分的内容更改为如下内容:) ?& s# h+ j0 ~( V3 K/ D0 T
' m$ w% {! `" ]5 t/ J. [% `; V0 \* N
```nginx
- R& R( Z# B% L! z4 \server {7 Q* b1 ~" R$ t. O$ v: t- f
    listen 80;/ ]) t( h' Y) x! m! ^
    server_name your-domain.com;7 h* r8 j( m: X) P5 r8 [" S9 y2 K8 ]
    return 301 https://$server_name$request_uri;7 ^$ B6 p! q8 V( W$ T8 g
}; b0 Y& e9 n+ I
: v1 |8 o! }! E: B# x1 q
server {$ L, d* c& K, k- K* E3 ~/ ]/ ~
    listen 443 ssl;0 G) M& \' B/ B6 E1 i, z
    server_name your-domain.com;
- C" }) S" N3 m0 w) ?: W! i9 b- J  F& p$ z, M; B+ L9 o; F% ~' ^
    ssl_certificate /path/to/ssl.crt;
: F1 Q' ~. b0 ^% t    ssl_certificate_key /path/to/ssl.key;
: U  t. \/ W) y6 T: J4 |7 V
: j6 t; _" c- k: k+ }# Z    location / {* \; i( e1 J' ?, V+ e, v
        proxy_set_header X-Real-IP $remote_addr;
# i5 n5 P% E' e9 ^        proxy_set_header Host $http_host;
5 ~+ Y5 N3 t6 q1 Y; A" i& a        proxy_pass http://127.0.0.1:2368;
* h$ h& K3 y3 k. N    }+ M) b" k- k* C/ [# H5 ]
}
9 b3 v% o7 |+ O  C6 q2 I# a```
7 V8 c  x! A- c( f4 Z4 w, x这里我们在http部分新增了一个重定向。如果用户访问http协议的域名地址,就把请求重定向到https协议上的域名地址。
+ Z. a8 w( [! K3 j. p5 D2 ~9 B5 N1 u- `# E: v% {) b/ T8 Q
接下来,我们配置HTTPS服务器。3 g) j+ F, h  Q/ [' P
1 P8 Y4 A' ~2 T& w7 G
首先我们配置服务器监听的端口为443,在 server_name 后面指定你的域名。6 _& g8 n" I% F* ~9 o$ T
& f3 q4 A" E. y  {2 S
然后设定 ssl_certificate 和 ssl_certificate_key 分别指向证书和密钥文件。这里的证书和密钥文件应该放在一个非常安全的位置。
2 I, k( L' n$ M- C4 O
2 H. Q8 l$ v+ V$ v% U3 t最后,用location指令将所有请求转发到Ghost的本地端口。6 O: v1 W/ x) T4 I3 O' ~8 F

. c1 C' `; E6 v% i步骤3:重启Nginx服务器
! O: J7 l% N1 c4 `8 m8 ~6 c" D0 S  P$ E2 }3 t6 v2 I$ ]) g
使用以下命令在服务器上重启Nginx:) ?+ r+ ]% H; P- O. Q

- x7 v5 o9 a; Z3 F% v/ o, \$ i```bash
: p% Z! m' S" H( ?) }sudo service nginx restart
. v' h' ~- R0 q7 n  Y* G, A```
4 ~8 E, ^& m) ]" U) a( G& K
# k. [; p- F! [# b+ s步骤4:测试" c) C& X; B# h, b3 ]
9 l& q9 _+ o0 L! Q: M, @; ~
现在你可以访问https://your-domain.com,此时应该可以看到浏览器地址栏中有一个锁形的图标,这表示你的站点已经成功启用SSL证书。
, D9 u* `9 w! s/ y$ I' J+ J+ s8 ~& ]6 e& d5 R/ j
这样就完成了将Ghost网站启用HTTPS访问,这个过程可能会有一些细节问题,如果您在安装中遇到问题,可以根据错误提示进行排查。
回复

使用道具 举报

319

主题

485

回帖

3133

积分

管理员

积分
3133
QQ
 楼主| 发表于 2023-5-23 09:21:58 来自手机 | 显示全部楼层
在windows下如何启动和重新启动,或停止nginx?
  k0 h. N8 j) W
9 W0 n% e: C! M3 F4 z* ^' b在Windows下启动、重新启动和停止Nginx,可以执行以下操作:; G' S! S# b) p( W- X1 m, B8 {, V2 T* {
# N/ \. B& k$ \1 v. ~
启动:" E7 A- M; ^/ n% f7 Q* ]

4 E0 `% G2 Y. b  y! [1. 打开命令行,进入Nginx安装目录,例如:`cd C:\nginx`6 S3 L  o1 o  K6 T' x  ^
2. 输入命令`start nginx`; l  U1 ^6 W! R# h

( ]1 V1 A7 E: |; U: B' ?$ J4 s重新启动:
( ?2 e) u) ?$ B- M
. ]3 y! j& i! e0 K3 [0 f( Q1. 同样进入Nginx安装目录8 {6 e* E0 e7 g
2. 输入命令`nginx -s reload`3 k, B: T: |7 a( M

3 g" \' D1 K& |* V) G停止:
$ v1 K0 N; i! x. e# a# |+ g) i) d
4 v* N1 Z7 e9 B! T, ]' b' K2 j1. 同样进入Nginx安装目录
( @2 @+ m0 M7 n( c2. 输入命令`nginx -s stop`0 d+ m# D! r3 h0 @4 L  I5 G9 b

% M% i3 A+ s' }% q; o需要注意的是,如果你在Windows上使用了Nginx的“Windows Service”服务,那么也可以在“服务”(Service)菜单项中找到Nginx的服务,直接通过“启动”、“重新启动”、“停止”等来操作它。  B3 F6 T7 J9 T
5 j& G2 d" j" g' F$ p( r
总之,这些命令将启动Nginx服务器以供使用,重启或停止它。做出更改后,要确保在启动或重新加载Nginx之前测试一下配置更改。
回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|通达产控投资 ( 粤ICP备2023021749号-1|粤公网安备 44030402006137号 )

GMT+8, 2025-7-23 10:15 , Processed in 0.077782 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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