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

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

[复制链接]

314

主题

478

回帖

2960

积分

管理员

积分
2960
QQ
发表于 2023-5-23 09:09:35 来自手机 | 显示全部楼层 |阅读模式
要在Windows的NGINX下部署Ghost博客系统,需要执行以下步骤:. g# z: M9 P, `7 W8 c9 w! ?3 I
5 @' Y  n1 b, N
步骤1:安装Node.js
! Z# ]0 g6 G5 d" J+ y4 E# D/ a: w1 L  J* m5 p$ {
在Windows上安装Node.js。这是一个基于JavaScript的服务器端开发环境,使Ghost能够运行。0 O+ l/ @. L& v
% I: C+ \; j) v# E1 E% C+ i
步骤2:安装Ghost7 M) W/ x4 ^6 H+ L
" X- M' w! V9 k
在Ghost官方网站上下载最新版本的Ghost。解压缩下载的文件并移动到想要安装Ghost的文件夹。然后通过命令行运行`npm install --production`以安装所有必要的依赖项。
2 d2 p6 W/ @3 K0 z, P$ H8 I, p1 G' B
步骤3:配置NGINX/ y) k% c3 |+ R3 X, c
0 e8 E# v  ?* c2 y$ ]: s# [
安装NGINX。打开文件夹,找到“conf”目录,并编辑nginx.conf文件。在http部分的末尾添加以下内容:
$ y1 ~+ x/ P+ H  g2 B/ R2 ?1 M/ R' A8 a) t! S! I$ w3 ]
```nginx# m# \  }: `8 k
server {
  M- L9 a8 i/ Q1 j    listen 80;
0 P( z  ?$ t9 e1 K! f! O    server_name your-domain.com;8 b& m3 B! b0 `

7 p9 z, b5 A2 a; }. q7 i0 H    location / {
( m# Z' o7 d1 W        proxy_set_header X-Real-IP $remote_addr;# K! {1 [/ u/ n
        proxy_set_header Host $http_host;/ I5 ]$ j0 ?5 Y
        proxy_pass http://127.0.0.1:2368;
  |! X* u7 J8 k; c) ?0 D    }
8 X" i2 c3 D* b* o# E9 G7 [6 @}$ d( L1 Q! b7 o! a( ^9 w( q$ _( F
```& A. Z5 S# i) f, N
5 ?4 }; J8 A" F0 `, G9 f
将“your-domain.com”替换为你的域名。这样,所有通过http://your-domain.com的访问都将被定向到Ghost服务器的2368端口。
* u- ^( G0 l* o0 q% M$ u; _  i% X* v+ W" S
步骤4:启动Ghost
2 U% z, c9 X) S. G4 X
, |) ]- R# ~$ B; {在Ghost程序文件所在的文件夹中打开命令行,输入`npm start --production`以启动Ghost。现在你可以在浏览器中访问http://your-domain.com。应该可以看到Ghost的欢迎界面。5 A' G, _3 Z' X
! q8 J1 K5 {. L" z% M
默認情況下Ghost将運行在http://localhost:2368上,但是馬上通過Nginx反向代理縮短Ghost的網址,讓Ghost運行在http://your-domain.com上。
6 z+ z5 q  e, R' Y7 R0 C- p& z& W
这就是在Windows的NGINX下部署Ghost博客系统的简单步骤和路径。
回复

使用道具 举报

314

主题

478

回帖

2960

积分

管理员

积分
2960
QQ
 楼主| 发表于 2023-5-23 09:10:10 来自手机 | 显示全部楼层
在nginx的配置中,需要指定ghost的目录吗?或者说应该指向哪个ghost网站目录?
% d. A5 k" S' H. I7 @' a# V5 g) Q1 s8 ]2 I
在Nginx的配置中,需要指定Ghost的目录或位置,通常需要指定Ghost的主目录。这个主目录通常是Ghost程序包的根目录,即你在步骤2中解压缩的Ghost文件。
" \3 c0 W# {# ~* j, R) U- T9 {9 J  t) V' j. v# q: x
在步骤3中,我们通过添加以下内容来指定Ghost的位置:1 r$ o7 b- ~" z: n" M) R

$ t. E$ j/ p; l9 }+ k& F```nginx2 W/ n7 `% ]* E
location / {( o5 E& B8 ^/ _7 |0 x6 Q! W( U8 `8 t
    proxy_set_header X-Real-IP $remote_addr;( J! u7 g$ |! {( S+ f8 e
    proxy_set_header Host $http_host;
$ G8 p4 K4 ^/ }5 [! W    proxy_pass http://127.0.0.1:2368;
# \; k+ N9 X4 _, S: }}4 _6 T9 h# J' m; m
```
0 N# m# ~! z; v- R: `5 x( r& L0 L! c& ^' I( N  L9 B+ }1 T) s, k7 i
在这里我们使用`proxy_pass`指令来设置Ghost的目录。这里指定的默认值是`http://127.0.0.1:2368`,对应着Ghost的默认端口,这里的意思是把所有通过Nginx访问的请求都通过该地址转发到Ghost。
7 L5 w# P3 J; b7 d9 F+ T/ y- s8 U- A3 ^& R; K
如果你的Ghost是安装在其他位置,请将“proxy_pass”指向你的ghost安装目录。# g0 h' H) e. @. ~3 \9 @$ X  o- k

1 `/ V6 h  f" J, D总结来说,只要在Nginx的配置文件中指定了Ghost的代理位置,即可让Nginx代理Ghost的请求,并将这些请求发送到Ghost的安装目录上。
回复

使用道具 举报

314

主题

478

回帖

2960

积分

管理员

积分
2960
QQ
 楼主| 发表于 2023-5-23 09:13:15 来自手机 | 显示全部楼层
如果ghost站点需要启用https访问,安装ssl证书的话,具体如何实现,需要做哪些设置?
  ^/ {8 }' J' p- W4 i! R: S+ U( {$ e4 S- b0 r( g7 K
要在Ghost中启用HTTPS访问,需要有SSL证书,并进行许多配置。可以按照以下步骤来安装:+ z+ x/ E# L4 [# U

" w/ F2 s, @6 n; j* A) a步骤1:获取SSL证书/ k$ a7 _- V2 I1 d- R; w

( U% g+ u0 D) D  K9 w获取你想要使用的SSL证书,通常是购买或从免费的证书机构(如Let's Encrypt)获取。将SSL证书和密钥文件上传到服务器上。& L' Q: S- D' e/ f

+ J: N9 [: w" u0 e6 F( ]步骤2:修改Nginx配置文件  M& s! h3 z8 h& ^  K: r
# j) w9 L- c' _% K
打开Nginx的配置文件,将http部分的内容更改为如下内容:6 L% r* f& ]2 @+ ~

4 A* V  D7 N$ y5 r/ D3 H```nginx2 h8 @; t: O, K* _5 \1 o. d2 J
server {5 H3 I5 `3 j( p/ o
    listen 80;
; \# D: _7 {4 [. g7 i& R( `    server_name your-domain.com;
: ?1 I+ k* [3 C* \3 y) q1 e2 w    return 301 https://$server_name$request_uri;% c  g$ \  \# x1 b  X+ Q/ N# m
}
- n3 |. P( O/ l$ ~0 t8 I! `( ^  V2 F* v2 y( r
server {7 G/ m( [, c& m( ~2 f* g
    listen 443 ssl;
* t' S; t! C3 z7 T( @# d0 O    server_name your-domain.com;
+ c, y: b6 I( A+ F" m3 C5 i5 X% e* z0 s2 ~5 C! e4 {0 Z# t0 K
    ssl_certificate /path/to/ssl.crt;
+ \4 L6 N9 Y' |! @- K    ssl_certificate_key /path/to/ssl.key;
" W9 v+ x$ u, R3 B2 b1 g6 [; _; q: r
    location / {
8 B! d  g4 B! X& I        proxy_set_header X-Real-IP $remote_addr;
" e7 \# ?' u+ s* A* s& z8 v3 I        proxy_set_header Host $http_host;
- P3 ~/ N9 l8 r8 D1 y; _        proxy_pass http://127.0.0.1:2368;
! f1 b8 |7 z4 `% D    }) r) U7 O0 }- H- E, _
}
* _7 o/ U0 P% N# r# \+ F3 r6 w```! Q3 _; x0 q) F, B6 N% c0 o5 A1 R. d
这里我们在http部分新增了一个重定向。如果用户访问http协议的域名地址,就把请求重定向到https协议上的域名地址。! x" y( p7 [9 j/ A. W6 G9 g
8 d6 j" n! I; u
接下来,我们配置HTTPS服务器。
6 m. v0 ]* _& E9 }* G' M
' H) S* R. S( i. v首先我们配置服务器监听的端口为443,在 server_name 后面指定你的域名。
$ Z( Z8 M4 x: s. O1 J+ ?4 k* @& p. w0 f4 p) P2 z7 P
然后设定 ssl_certificate 和 ssl_certificate_key 分别指向证书和密钥文件。这里的证书和密钥文件应该放在一个非常安全的位置。- r5 M- K  ^( q7 V3 x
, x6 M+ w5 _& T/ c0 ^: V& T
最后,用location指令将所有请求转发到Ghost的本地端口。6 I1 G; l! p' P$ I

1 L, T; s5 v: c步骤3:重启Nginx服务器' \, s+ R. E0 U% |0 t( q. K

( r" P/ H1 x4 F$ n4 w  E* G9 o1 \使用以下命令在服务器上重启Nginx:
1 s4 N# ~' J, S( p$ V! Z+ i" e4 w0 O: f$ E) N
```bash2 o3 f% f" g; q, k! A
sudo service nginx restart
  x1 k$ t' E( q6 X```- ~; l5 o! S! y; W' L
# |1 e. f8 ~; @2 L7 A0 m. d* S
步骤4:测试
$ N) o/ P8 |6 Q
3 r/ t" O! P, \现在你可以访问https://your-domain.com,此时应该可以看到浏览器地址栏中有一个锁形的图标,这表示你的站点已经成功启用SSL证书。% {" _: |  F% k  N! s# s3 r
* q1 v6 F3 d, w" d4 y! U. R
这样就完成了将Ghost网站启用HTTPS访问,这个过程可能会有一些细节问题,如果您在安装中遇到问题,可以根据错误提示进行排查。
回复

使用道具 举报

314

主题

478

回帖

2960

积分

管理员

积分
2960
QQ
 楼主| 发表于 2023-5-23 09:21:58 来自手机 | 显示全部楼层
在windows下如何启动和重新启动,或停止nginx?! {% O; N+ J# h* e3 A7 H# N( v0 g/ b; s' X

( q) T$ b2 }! c  s0 @) V在Windows下启动、重新启动和停止Nginx,可以执行以下操作:
+ R3 y& }/ z- {( o) X2 h
; U. e* }& G; p' K% f启动:" z; m4 B5 H$ H5 g5 l% A) X" t; ~

% Q5 `' w' M! \  h9 v4 x3 _, T1. 打开命令行,进入Nginx安装目录,例如:`cd C:\nginx`# \: a% P+ j$ `8 a6 e* b1 @
2. 输入命令`start nginx`
9 B+ j* {) a" A6 C2 d  }
' u( K, ~  J- v( M* u# b5 I( i+ s" v重新启动:
8 e- r: v& b5 E1 H9 o! p. @* Z) c' Q8 n+ `8 _5 I
1. 同样进入Nginx安装目录
8 K2 j! j" B4 {" [/ z# ^2. 输入命令`nginx -s reload`1 X0 ?: E5 z$ E- i" O
, B1 J( }3 c8 P& _* w5 \0 M
停止:
) x1 Z) Z9 }. T; @
3 S" a1 q3 V& ?! d2 F; ], F1. 同样进入Nginx安装目录- u( R% _9 N6 D7 u2 U
2. 输入命令`nginx -s stop`
7 C) m4 p8 K- ~, {7 F, K
- J8 D6 C5 k+ H- L需要注意的是,如果你在Windows上使用了Nginx的“Windows Service”服务,那么也可以在“服务”(Service)菜单项中找到Nginx的服务,直接通过“启动”、“重新启动”、“停止”等来操作它。
" D  w) N5 z% V8 @! \" F& u0 Q" J- Z. j& g8 `/ W5 u
总之,这些命令将启动Nginx服务器以供使用,重启或停止它。做出更改后,要确保在启动或重新加载Nginx之前测试一下配置更改。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-4-5 01:19 , Processed in 0.074397 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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