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

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

[复制链接]

524

主题

676

回帖

4597

积分

管理员

积分
4597
QQ
发表于 2023-5-23 09:09:35 来自手机 | 显示全部楼层 |阅读模式
要在Windows的NGINX下部署Ghost博客系统,需要执行以下步骤:0 H. l, `% K7 E' ~- v. T
: O) a! w4 Y" W: z  v  d
步骤1:安装Node.js0 U7 X( k* O! b
4 A# [! f& W2 D2 g
在Windows上安装Node.js。这是一个基于JavaScript的服务器端开发环境,使Ghost能够运行。
+ Q8 {; A! S1 L- }5 z5 s* Z, B2 K" l$ b+ h
步骤2:安装Ghost
) [% O5 x, _1 V' u. k1 p
4 l, B; x% u2 k! B在Ghost官方网站上下载最新版本的Ghost。解压缩下载的文件并移动到想要安装Ghost的文件夹。然后通过命令行运行`npm install --production`以安装所有必要的依赖项。( A, m4 D2 e* M5 c- q

4 j6 e  m2 u, B, V步骤3:配置NGINX
) i3 b. v& u, ]) O: J; D6 h- j+ ~
$ [# r7 s, K: g* t. ~# T安装NGINX。打开文件夹,找到“conf”目录,并编辑nginx.conf文件。在http部分的末尾添加以下内容:
! y0 a! }  K' z2 D& ?3 I7 h8 R/ T' c/ u: ^/ V, x
```nginx; J% D9 I: W! A, \
server {
/ h8 \8 Z1 j  S7 O    listen 80;( T1 N$ P" b+ y4 Z, |: N1 y. n
    server_name your-domain.com;) m& d0 V, R  ]6 w
6 v' Y( F" i- @
    location / {4 u; m: K2 m  ^/ L  h
        proxy_set_header X-Real-IP $remote_addr;, A/ [: w# O$ G3 s5 K0 x( g
        proxy_set_header Host $http_host;+ r0 c# z4 T- `
        proxy_pass http://127.0.0.1:2368;) s6 j3 c  L: `/ }+ l6 G
    }
$ c/ U- T% ~6 f7 s* e( a( x) U  ~}
# S6 g5 v* W2 W5 i$ ]( p```
# q  }! Y5 G' u8 A
  H" H) J6 F1 q& M! ~将“your-domain.com”替换为你的域名。这样,所有通过http://your-domain.com的访问都将被定向到Ghost服务器的2368端口。
0 [* X& R" {. _1 H
( D8 i9 Q: H: l. t5 a: r0 d: c/ t0 i步骤4:启动Ghost
8 Q- r9 }7 ], ^) [- K4 e; i  i+ K: D& K7 [" P7 m& z( p  y$ r
在Ghost程序文件所在的文件夹中打开命令行,输入`npm start --production`以启动Ghost。现在你可以在浏览器中访问http://your-domain.com。应该可以看到Ghost的欢迎界面。
( r! l7 x) n: \& a+ o( m- P) `2 \7 L: P- v; |$ r4 ^5 C
默認情況下Ghost将運行在http://localhost:2368上,但是馬上通過Nginx反向代理縮短Ghost的網址,讓Ghost運行在http://your-domain.com上。* \0 G% G9 l2 t# f( w# I; e
5 L4 _9 i5 Y4 `' t
这就是在Windows的NGINX下部署Ghost博客系统的简单步骤和路径。
欢迎定制:13928122889
回复

使用道具 举报

524

主题

676

回帖

4597

积分

管理员

积分
4597
QQ
 楼主| 发表于 2023-5-23 09:10:10 来自手机 | 显示全部楼层
在nginx的配置中,需要指定ghost的目录吗?或者说应该指向哪个ghost网站目录?3 |- n5 l  {7 x7 r

$ `8 D/ `; w  l在Nginx的配置中,需要指定Ghost的目录或位置,通常需要指定Ghost的主目录。这个主目录通常是Ghost程序包的根目录,即你在步骤2中解压缩的Ghost文件。
, e/ V: L) p4 }( o7 C
) Q0 F, P0 M1 U) `在步骤3中,我们通过添加以下内容来指定Ghost的位置:' P! @/ l- i& u7 x: f

$ R' b5 [1 V1 Q5 q; |  M```nginx1 n& m2 V7 B& H0 n3 J; F: T! p
location / {9 y2 Q( g# ?: `; o! g) S' ?
    proxy_set_header X-Real-IP $remote_addr;2 b3 k* Y6 g* o6 |4 C# j2 Q: R
    proxy_set_header Host $http_host;& K8 F3 n$ g: V# T, x
    proxy_pass http://127.0.0.1:2368;
- j+ D7 _: {% w  d}
& B2 N  M( x; l( n```6 N' Y8 N. K* t+ e3 X9 C8 [8 ?; d
  |3 H. F' w; |9 j5 C3 S
在这里我们使用`proxy_pass`指令来设置Ghost的目录。这里指定的默认值是`http://127.0.0.1:2368`,对应着Ghost的默认端口,这里的意思是把所有通过Nginx访问的请求都通过该地址转发到Ghost。, F" E5 h& `4 y% y) S4 S5 Z

) l% ^# e5 |- ~6 v如果你的Ghost是安装在其他位置,请将“proxy_pass”指向你的ghost安装目录。6 f+ ]% b" S7 T$ H: u9 W% O

2 _% }$ B: F4 c8 q/ B% O总结来说,只要在Nginx的配置文件中指定了Ghost的代理位置,即可让Nginx代理Ghost的请求,并将这些请求发送到Ghost的安装目录上。
欢迎定制:13928122889
回复

使用道具 举报

524

主题

676

回帖

4597

积分

管理员

积分
4597
QQ
 楼主| 发表于 2023-5-23 09:13:15 来自手机 | 显示全部楼层
如果ghost站点需要启用https访问,安装ssl证书的话,具体如何实现,需要做哪些设置?
8 s+ v; {& z/ I2 z& F; P3 l' a; J! D7 L7 p! v' G6 g
要在Ghost中启用HTTPS访问,需要有SSL证书,并进行许多配置。可以按照以下步骤来安装:
' c1 A8 a6 J2 e, c0 w4 R3 E
* a% M8 i% _6 j! d步骤1:获取SSL证书
" s) J4 U# a$ Z+ Q$ r2 e! n. ~
: I; N4 f) w% _获取你想要使用的SSL证书,通常是购买或从免费的证书机构(如Let's Encrypt)获取。将SSL证书和密钥文件上传到服务器上。* ]3 F3 M8 x" C1 p# |

5 ~7 X# m: A; o5 x( d( U步骤2:修改Nginx配置文件% n! n. B  m- Y# z
* o- V& m7 t4 K) g: o% N: @+ d
打开Nginx的配置文件,将http部分的内容更改为如下内容:+ _+ Y4 A9 [* X2 d

% n: M  F7 g0 g1 S```nginx
  T7 U* L! y% W* }server {
7 h7 b/ K7 H3 k    listen 80;
$ U- W6 i- _3 R9 k! {: F    server_name your-domain.com;# p; r/ p2 m- p/ J
    return 301 https://$server_name$request_uri;
, o  l/ g/ c9 O4 x! N; z}* w5 h' V% o! |9 `" o; A/ a8 a

' B7 X4 T! Y$ D- D. i! iserver {
7 e( ]  |* L# K* [+ F    listen 443 ssl;
, J/ S5 O. J+ ?7 Q6 J8 l5 u; j    server_name your-domain.com;
% T. `5 S. s. G& F5 M0 K8 ^. Q3 A" w* q+ l
    ssl_certificate /path/to/ssl.crt;
1 F7 G- o0 n# ]' k; ^1 R/ C% K    ssl_certificate_key /path/to/ssl.key;
  g! j7 Z8 x* l% _: H. y
$ ]- E8 A0 ?! e, j    location / {- f( G. B3 W! G' x2 b4 h7 w+ D5 U% }6 `
        proxy_set_header X-Real-IP $remote_addr;! `0 K& k1 N. ^8 J6 C
        proxy_set_header Host $http_host;
" a$ D4 U6 u8 ~; F        proxy_pass http://127.0.0.1:2368;! Z0 `! I" I: B' p( X
    }9 S. d7 o7 O: O) k
}0 `2 h% B5 M; c3 `: e% T- |7 C
```5 i# s( E: m% G8 ^! N9 ?
这里我们在http部分新增了一个重定向。如果用户访问http协议的域名地址,就把请求重定向到https协议上的域名地址。7 D6 h! Q. ~, r5 I1 ~& _
4 N; D+ C3 k' k" \1 Z
接下来,我们配置HTTPS服务器。
2 D7 Y% I( |) Z+ g9 W& z/ T7 Q9 b4 p* f% Z/ p
首先我们配置服务器监听的端口为443,在 server_name 后面指定你的域名。
) |& x, ~2 X$ j  D8 X
' B4 Z1 P9 a& C5 i; {然后设定 ssl_certificate 和 ssl_certificate_key 分别指向证书和密钥文件。这里的证书和密钥文件应该放在一个非常安全的位置。
$ p+ q4 j  W; H( d
" G) ^4 @( X  H/ k( I8 ?. v最后,用location指令将所有请求转发到Ghost的本地端口。7 c5 t7 f/ f3 A2 F( }
: Y7 B/ t+ x. z+ U! q  j5 U
步骤3:重启Nginx服务器( Q  |# K9 x( r) p
% m+ s4 I/ Y$ b
使用以下命令在服务器上重启Nginx:
+ Q! i% Q9 B1 v# j# w5 u7 w, t( y5 n- V3 g. X2 G9 ]
```bash8 P4 @' d: h% o8 \( c9 o  W8 ^2 Y. }
sudo service nginx restart% J9 L: d. U! p2 u
```; w$ ?2 E8 b8 L/ p, L# X
% T. _- b+ ~) B: j! q" `5 G" C
步骤4:测试! h# N* r, |+ d
- K$ e( t& T# b
现在你可以访问https://your-domain.com,此时应该可以看到浏览器地址栏中有一个锁形的图标,这表示你的站点已经成功启用SSL证书。) v6 U: F7 m2 r* \1 F  K
' _. @/ X% F( U* \) j
这样就完成了将Ghost网站启用HTTPS访问,这个过程可能会有一些细节问题,如果您在安装中遇到问题,可以根据错误提示进行排查。
欢迎定制:13928122889
回复

使用道具 举报

524

主题

676

回帖

4597

积分

管理员

积分
4597
QQ
 楼主| 发表于 2023-5-23 09:21:58 来自手机 | 显示全部楼层
在windows下如何启动和重新启动,或停止nginx?
  K2 B( e" S/ A+ a0 ?& ]$ N8 b; t0 K) ~" t, F. |
在Windows下启动、重新启动和停止Nginx,可以执行以下操作:
, Q* \8 G* `) I% w9 Y% z4 ?& x! K: B* @7 i$ T
启动:
6 }- D, b$ d- g2 t4 n
8 K- z1 ]0 ~0 e1 n) V1. 打开命令行,进入Nginx安装目录,例如:`cd C:\nginx`
: t% z& T. e& B5 M2. 输入命令`start nginx`; ?( F: [  R8 ^9 o( C. \/ g( ]: f# b0 V

" T; l6 R7 {2 k7 y, L, f$ ]: _重新启动:
2 c( t! |- }1 }1 T3 t4 e6 \* d
- M) ~% a' i& v2 m1. 同样进入Nginx安装目录* D% X5 M1 F+ g/ D9 S2 o
2. 输入命令`nginx -s reload`$ L( l) [3 w8 B/ \) J3 v* n

4 h  M- l+ q. p  ?4 N6 ?停止:, s3 v" R! z6 e- t# c

# v2 J, w8 W# D+ \/ Y: {6 x8 i1. 同样进入Nginx安装目录- I, O" p' _6 V! _: x
2. 输入命令`nginx -s stop`
8 x3 e1 E- Z% t% e7 b. m& {: w& U! h+ n9 j9 F: @4 Q4 b+ v7 [
需要注意的是,如果你在Windows上使用了Nginx的“Windows Service”服务,那么也可以在“服务”(Service)菜单项中找到Nginx的服务,直接通过“启动”、“重新启动”、“停止”等来操作它。5 V& _( O* N8 a- S7 O
! J1 o! V& `+ L
总之,这些命令将启动Nginx服务器以供使用,重启或停止它。做出更改后,要确保在启动或重新加载Nginx之前测试一下配置更改。
欢迎定制:13928122889
回复

使用道具 举报

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

本版积分规则

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

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

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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