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

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

[复制链接]

524

主题

676

回帖

4597

积分

管理员

积分
4597
QQ
发表于 2023-5-23 09:09:35 来自手机 | 显示全部楼层 |阅读模式
要在Windows的NGINX下部署Ghost博客系统,需要执行以下步骤:
: L; ~  x" K: d( w. W  n/ o$ ~% [1 J  n$ m* q+ t: C$ r  k( q
步骤1:安装Node.js
5 G7 @8 i, G  r# z
1 w6 B  _/ Q7 c在Windows上安装Node.js。这是一个基于JavaScript的服务器端开发环境,使Ghost能够运行。& X& ]: ^" U- f( p

' t& x; ]6 N9 X: S4 e步骤2:安装Ghost
, ~- m8 t- E" I  L9 U5 L4 L2 s  o( u' u# Y
在Ghost官方网站上下载最新版本的Ghost。解压缩下载的文件并移动到想要安装Ghost的文件夹。然后通过命令行运行`npm install --production`以安装所有必要的依赖项。  i: i5 T- C! d- c
6 A7 i& {- T* e+ m
步骤3:配置NGINX
8 g4 y% K9 [2 K$ A6 q  C
+ b* S- O  i1 p% x% n" O9 Q. U安装NGINX。打开文件夹,找到“conf”目录,并编辑nginx.conf文件。在http部分的末尾添加以下内容:) q  ?  ~4 \# V+ d/ r

6 X+ Z- H; m% z( w& w, ?* Q```nginx
( W+ ]+ b! Z8 V9 X3 ^server {
, a& b8 m  |: g& W! l: ~    listen 80;) _$ F/ n! b  U' |/ N
    server_name your-domain.com;
* H0 F2 s$ I, i" l, d& Y% D8 q' ]
    location / {
* L9 g6 m  h5 e2 e7 ?        proxy_set_header X-Real-IP $remote_addr;
3 c9 v- {( d- G. y2 v$ C( X        proxy_set_header Host $http_host;
  r- Q5 L; z3 t. l0 z        proxy_pass http://127.0.0.1:2368;2 o& q/ G+ Z" Y
    }: A  x! ^" x7 W- U# V
}" a6 l$ {" y2 M+ A
```+ h& m4 c3 i" H
. z6 w1 E$ z( r* w. N1 K
将“your-domain.com”替换为你的域名。这样,所有通过http://your-domain.com的访问都将被定向到Ghost服务器的2368端口。
* f7 q) j* J; t' s, Y% F( P: m
2 A) u' i; _+ l! |0 \& I' ]- p步骤4:启动Ghost4 T' v3 V7 f- F$ e( a8 X' X3 B
" u4 `4 u! l& @
在Ghost程序文件所在的文件夹中打开命令行,输入`npm start --production`以启动Ghost。现在你可以在浏览器中访问http://your-domain.com。应该可以看到Ghost的欢迎界面。
/ n& `: ]  ]2 V! h
5 Q! i& h# t3 p# [默認情況下Ghost将運行在http://localhost:2368上,但是馬上通過Nginx反向代理縮短Ghost的網址,讓Ghost運行在http://your-domain.com上。
: A4 g1 `3 x9 r6 z( Z
- V& y/ g% t! O0 h3 H, u这就是在Windows的NGINX下部署Ghost博客系统的简单步骤和路径。
欢迎定制:13928122889
回复

使用道具 举报

524

主题

676

回帖

4597

积分

管理员

积分
4597
QQ
 楼主| 发表于 2023-5-23 09:10:10 来自手机 | 显示全部楼层
在nginx的配置中,需要指定ghost的目录吗?或者说应该指向哪个ghost网站目录?
0 k2 v* C. d# ?- U8 ?$ \' s  Y+ D
在Nginx的配置中,需要指定Ghost的目录或位置,通常需要指定Ghost的主目录。这个主目录通常是Ghost程序包的根目录,即你在步骤2中解压缩的Ghost文件。
4 J0 M5 t) c8 u) `5 l6 v& B7 q3 K1 ]; M. U; H+ P# V7 z% v' X
在步骤3中,我们通过添加以下内容来指定Ghost的位置:
7 W6 b; x" a; n+ Z) i* Q! U- C: a0 r) t' }" x
```nginx
4 c* r  }- v6 O) L& Z4 alocation / {- L5 y" i# u" G( D
    proxy_set_header X-Real-IP $remote_addr;
' f0 d8 \; R8 f  K6 R  L    proxy_set_header Host $http_host;5 X% b. U7 K3 y* {" l
    proxy_pass http://127.0.0.1:2368;
6 R- T7 \: J' Q8 \+ ]9 T}% X, M2 _# l8 G# X- {
```/ I& o9 S9 j8 N& h- z

/ p# o, c4 d$ `9 y在这里我们使用`proxy_pass`指令来设置Ghost的目录。这里指定的默认值是`http://127.0.0.1:2368`,对应着Ghost的默认端口,这里的意思是把所有通过Nginx访问的请求都通过该地址转发到Ghost。
' C( t7 ?$ }! k6 @. L% n2 Y6 G0 w  O! S* y* S
如果你的Ghost是安装在其他位置,请将“proxy_pass”指向你的ghost安装目录。' A7 D5 V. N2 P, K0 W
% m1 R) @( a& |
总结来说,只要在Nginx的配置文件中指定了Ghost的代理位置,即可让Nginx代理Ghost的请求,并将这些请求发送到Ghost的安装目录上。
欢迎定制:13928122889
回复

使用道具 举报

524

主题

676

回帖

4597

积分

管理员

积分
4597
QQ
 楼主| 发表于 2023-5-23 09:13:15 来自手机 | 显示全部楼层
如果ghost站点需要启用https访问,安装ssl证书的话,具体如何实现,需要做哪些设置?
" U: X, c( X$ M5 B4 v+ v! I
5 {8 f/ m: t& a( H% p* Y& f要在Ghost中启用HTTPS访问,需要有SSL证书,并进行许多配置。可以按照以下步骤来安装:; M3 z* Z& o  n5 L$ s1 E; Y) T

* S6 H( y! c8 p6 Z步骤1:获取SSL证书2 O! Z! @* k8 j+ j9 Z7 w, T& @$ t8 H$ e
$ x( x6 w; D% g) O4 A) Q, u
获取你想要使用的SSL证书,通常是购买或从免费的证书机构(如Let's Encrypt)获取。将SSL证书和密钥文件上传到服务器上。3 W' Z' D0 N" V9 ^

& {  Y: P, v5 a7 s步骤2:修改Nginx配置文件. i. e% P; z7 s' t
- c- e' i6 r( T# h& G
打开Nginx的配置文件,将http部分的内容更改为如下内容:) ?" ~" ]. {" D2 J

, V! R4 U) G  f: }: s# K```nginx2 Q* H8 ]3 d- z- @) O1 Y
server {% H9 W& ?( [& R! f" K
    listen 80;+ I. U1 c; M* x2 f( k7 T
    server_name your-domain.com;
* v% }$ j6 W) Y    return 301 https://$server_name$request_uri;' e' M6 R8 O" |# A
}
0 L, m# a! n& ]5 K0 e( a' J
& @% j$ h' ~; T$ |; wserver {
9 z4 r3 H' {# I6 C$ G- Q    listen 443 ssl;, }1 ?8 N9 r$ ~! V# g
    server_name your-domain.com;9 [( j" f9 z* ]5 w  m* z& H/ P/ |' a& f9 l

8 I$ `. b( C6 `# N9 q    ssl_certificate /path/to/ssl.crt;# S3 O8 s- T5 _) q# K& Z
    ssl_certificate_key /path/to/ssl.key;0 r0 u6 M+ W$ p5 U

8 {0 t+ A& `/ Q/ S$ }; A: v    location / {, G/ P& P/ V  u9 R- i$ z
        proxy_set_header X-Real-IP $remote_addr;
/ o1 \, S& l9 f* k+ X) j        proxy_set_header Host $http_host;% ]6 F  v, D& I2 d2 x& R
        proxy_pass http://127.0.0.1:2368;+ l. v/ S0 e/ B% S) R2 F8 p# U- r
    }
- I* t3 {8 {; M# c, d}
2 E' E: k6 b$ x# G2 R- }  a```; u/ N. b% S4 S; X* X/ z7 V; d  A
这里我们在http部分新增了一个重定向。如果用户访问http协议的域名地址,就把请求重定向到https协议上的域名地址。1 K% p2 ?. t& U" L  t& v$ B
* {. s9 J5 D0 V+ {
接下来,我们配置HTTPS服务器。
! W: T& I) h6 J8 N2 a% c+ u: }: R( B2 ]  Q. W9 z0 C
首先我们配置服务器监听的端口为443,在 server_name 后面指定你的域名。' F' |) v6 b& \  c. U$ |( ^% T

5 n! B8 o3 i8 x然后设定 ssl_certificate 和 ssl_certificate_key 分别指向证书和密钥文件。这里的证书和密钥文件应该放在一个非常安全的位置。
0 k8 v' K0 W* a! ?. n
+ [: C2 s- S3 E. _* d& t% H% {最后,用location指令将所有请求转发到Ghost的本地端口。
: |( @9 s) W9 Q5 B, ]8 p0 g7 B
* l, J9 I. u  n2 T7 ?5 O步骤3:重启Nginx服务器% L( G+ \/ R( ]

! y8 g* w/ ~" b1 |6 V8 ?使用以下命令在服务器上重启Nginx:
; ^5 W1 N8 M2 @7 ?$ E4 d5 I; U# [) r0 U/ @" J
```bash8 h) n" ~$ K2 N1 S( H7 p0 J8 c, q
sudo service nginx restart# [: X; L( ^! g( j3 y/ a% K0 c5 T
```
- I0 u" o- m3 M. a
$ g- N1 {' Z  E; \, x1 g步骤4:测试
6 b9 s1 y9 M: S1 s2 f2 N- U" x  O! l- o
现在你可以访问https://your-domain.com,此时应该可以看到浏览器地址栏中有一个锁形的图标,这表示你的站点已经成功启用SSL证书。
$ @/ N5 P* s7 @% a! k% s: t! Q3 ~3 W( O/ E2 }8 n; s
这样就完成了将Ghost网站启用HTTPS访问,这个过程可能会有一些细节问题,如果您在安装中遇到问题,可以根据错误提示进行排查。
欢迎定制:13928122889
回复

使用道具 举报

524

主题

676

回帖

4597

积分

管理员

积分
4597
QQ
 楼主| 发表于 2023-5-23 09:21:58 来自手机 | 显示全部楼层
在windows下如何启动和重新启动,或停止nginx?
3 |. i% {8 }) V0 x5 n
2 C& V; `* b, Q5 e. m* i: a在Windows下启动、重新启动和停止Nginx,可以执行以下操作:
  P4 I% K% T+ S2 P/ K* m+ ~- I, Y% W: ~& `4 k# T" E5 l
启动:9 v- ^% q( ]* ~8 W. v5 J3 N' V
$ d; x1 z$ C# S( G5 w/ G: l3 g1 |
1. 打开命令行,进入Nginx安装目录,例如:`cd C:\nginx`% Q8 O* |7 r1 Q1 ]  k& o5 k. C
2. 输入命令`start nginx`
. W; j4 j# U0 p1 R# V/ s
/ O: |  n# S2 U6 k重新启动:. T% \8 c7 i5 M9 v+ q
7 D6 y. _9 g. u: n7 P% s* o) M
1. 同样进入Nginx安装目录8 y: h: a  k' d1 o9 m7 u
2. 输入命令`nginx -s reload`% h4 `1 t& e1 m8 A; O) N5 a" s4 G8 x

! S" C" e. n* N! `3 ^# i停止:
! v. E5 e: K+ y+ c4 B7 H6 N
" ?$ J' ]( b  w8 J1. 同样进入Nginx安装目录! n! Y9 e' F, U  `+ P, o( ?2 @
2. 输入命令`nginx -s stop`) x$ a9 \( Q3 V$ @) ^
5 m2 }" s7 |: \" z) H  K
需要注意的是,如果你在Windows上使用了Nginx的“Windows Service”服务,那么也可以在“服务”(Service)菜单项中找到Nginx的服务,直接通过“启动”、“重新启动”、“停止”等来操作它。+ R4 v5 [' h# D& o1 }) B
! U( `$ a7 g4 P( U+ W5 h0 E0 b- l" h
总之,这些命令将启动Nginx服务器以供使用,重启或停止它。做出更改后,要确保在启动或重新加载Nginx之前测试一下配置更改。
欢迎定制:13928122889
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-6-18 19:50 , Processed in 0.017420 second(s), 3 queries , Redis On.

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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