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

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

[复制链接]

348

主题

566

回帖

3710

积分

管理员

积分
3710
QQ
发表于 2023-5-23 09:09:35 来自手机 | 显示全部楼层 |阅读模式
要在Windows的NGINX下部署Ghost博客系统,需要执行以下步骤:
( D" J8 f6 Y' v3 C& y9 j* {
  N$ I+ y: k  c( H步骤1:安装Node.js# F. g8 p* l- Q, `/ e, Q

/ K$ e% }* ~# T; _在Windows上安装Node.js。这是一个基于JavaScript的服务器端开发环境,使Ghost能够运行。
; k7 \6 Y) n* T) y! @" |0 r% S7 y
步骤2:安装Ghost4 {/ s/ m' K$ H( Y% F' s* \: r
8 k2 K* e/ F0 n" a
在Ghost官方网站上下载最新版本的Ghost。解压缩下载的文件并移动到想要安装Ghost的文件夹。然后通过命令行运行`npm install --production`以安装所有必要的依赖项。
8 w4 c( @: o. o1 y: ?% {1 D
: ?8 H& J. T' `% G" L4 ]0 M$ r  y步骤3:配置NGINX
  ]8 p3 q) ]% p* |! C5 d
6 ?, P. b( h( W4 ~4 c安装NGINX。打开文件夹,找到“conf”目录,并编辑nginx.conf文件。在http部分的末尾添加以下内容:* q4 k% s* u8 ]5 }1 I( K
4 Y& l8 L% q0 j  L6 {; N4 Z, f
```nginx: X- N0 s4 X' V. s  ]9 v% J& [
server {0 Y$ |1 m) g: Q) m2 A, s
    listen 80;; {% `. h0 J% b6 W# s+ j/ a% ^# o4 A
    server_name your-domain.com;
, O5 E6 \* m  ^, u  ~9 k' }5 P8 j7 M
    location / {
( K6 g( {  [3 J9 I- F# O& G9 g        proxy_set_header X-Real-IP $remote_addr;
  z* n. y/ }' `        proxy_set_header Host $http_host;+ B& Q) a$ E; [5 e" D9 f
        proxy_pass http://127.0.0.1:2368;
4 d& v) g4 P9 e5 l7 |  Z8 L9 m- ]: Z    }  T2 _( U- T% n+ M2 K2 v" l% `  S0 @$ E
}
& @: r$ L8 s2 o3 w+ C, Z! R```+ L; K0 X9 A  C6 `+ F

3 e/ v9 V  }. |将“your-domain.com”替换为你的域名。这样,所有通过http://your-domain.com的访问都将被定向到Ghost服务器的2368端口。9 i& g) g3 [1 s. t4 r) H7 J

) g, [" |9 \- ^! C* B步骤4:启动Ghost
3 n; V7 I' s! f/ @
; @* L! n. _5 [; n9 X在Ghost程序文件所在的文件夹中打开命令行,输入`npm start --production`以启动Ghost。现在你可以在浏览器中访问http://your-domain.com。应该可以看到Ghost的欢迎界面。3 ?3 `" m" r# o$ t7 U

$ _5 C( N! g" G默認情況下Ghost将運行在http://localhost:2368上,但是馬上通過Nginx反向代理縮短Ghost的網址,讓Ghost運行在http://your-domain.com上。
4 `  q/ |" Y' K$ Q1 m0 q& M0 d6 r2 k( e: J. w" J
这就是在Windows的NGINX下部署Ghost博客系统的简单步骤和路径。
回复

使用道具 举报

348

主题

566

回帖

3710

积分

管理员

积分
3710
QQ
 楼主| 发表于 2023-5-23 09:10:10 来自手机 | 显示全部楼层
在nginx的配置中,需要指定ghost的目录吗?或者说应该指向哪个ghost网站目录?/ R6 h8 O( S: e: Y8 h

6 H9 y, ~; T/ O1 q4 D1 s$ w在Nginx的配置中,需要指定Ghost的目录或位置,通常需要指定Ghost的主目录。这个主目录通常是Ghost程序包的根目录,即你在步骤2中解压缩的Ghost文件。
% {1 K- @1 H6 E& |: v
$ Q1 O& o: C8 b7 g/ B: Q8 W6 |在步骤3中,我们通过添加以下内容来指定Ghost的位置:% U' M" Z2 e+ e$ }/ W
9 V5 z9 I: K$ \
```nginx7 g' z; Q7 Z! V* @% c
location / {
+ h2 H' R0 z: p9 r9 `    proxy_set_header X-Real-IP $remote_addr;
, E: v; e8 B1 `- V9 j' s& p    proxy_set_header Host $http_host;, q! l# N" P2 j! ^) _' Z
    proxy_pass http://127.0.0.1:2368;
% N# [5 K/ a  b! a}
7 C+ _5 W  T3 X8 {* ]: i2 [, D```
2 O' P3 m3 ?% i! D
! h7 |: r1 E& C" ^. k: Y在这里我们使用`proxy_pass`指令来设置Ghost的目录。这里指定的默认值是`http://127.0.0.1:2368`,对应着Ghost的默认端口,这里的意思是把所有通过Nginx访问的请求都通过该地址转发到Ghost。: c" J# a% w  k- ]: X5 _5 ?

  k0 l, v/ H. {: X+ J如果你的Ghost是安装在其他位置,请将“proxy_pass”指向你的ghost安装目录。
+ l+ {" \* D% H0 r2 O, b+ N4 I8 A
总结来说,只要在Nginx的配置文件中指定了Ghost的代理位置,即可让Nginx代理Ghost的请求,并将这些请求发送到Ghost的安装目录上。
回复

使用道具 举报

348

主题

566

回帖

3710

积分

管理员

积分
3710
QQ
 楼主| 发表于 2023-5-23 09:13:15 来自手机 | 显示全部楼层
如果ghost站点需要启用https访问,安装ssl证书的话,具体如何实现,需要做哪些设置?+ Q6 l4 ]% j4 `2 d/ E

/ q* B" `# ]5 I2 Y- e要在Ghost中启用HTTPS访问,需要有SSL证书,并进行许多配置。可以按照以下步骤来安装:
) C& v& ?* s1 N3 \* H. j3 U7 S% m
- b* N: e6 L( y" E步骤1:获取SSL证书
7 O9 R3 o/ k/ ~% ]6 F7 E: b0 n3 Y; ?2 e3 b( i9 d+ f
获取你想要使用的SSL证书,通常是购买或从免费的证书机构(如Let's Encrypt)获取。将SSL证书和密钥文件上传到服务器上。- Z+ ?5 c* E9 _7 `( @

9 i4 o' d! R: l) l- v+ W/ q步骤2:修改Nginx配置文件- w+ B3 Q8 K0 v% F3 p3 E- o& n* F
2 s  E0 b2 U  V( d. k
打开Nginx的配置文件,将http部分的内容更改为如下内容:
  U% B6 ^  Q$ J, f- [" j
5 I( ]: S: S( p4 `# l0 a6 j3 R: C```nginx
- K/ ?0 n% @, Z. t  M# E! }server {
$ {! @. t' B; R3 O    listen 80;
5 _( n' y+ E& F6 o7 j    server_name your-domain.com;
" W/ ^: w6 |( C* `+ j/ `    return 301 https://$server_name$request_uri;5 B! Y+ r/ b2 r& J& a
}
% D9 N5 F4 M0 X# z. ~( J* L. T+ P3 i0 \1 G0 k  c
server {
4 b, T1 p1 ?4 u0 [$ n/ Y6 `    listen 443 ssl;' P% i! V4 j( A( f! U# }$ P) |
    server_name your-domain.com;
1 I+ c8 {' G: B0 S* X8 p7 S0 e  c- C
! s9 L9 x( g- g2 }    ssl_certificate /path/to/ssl.crt;) s8 C6 ]  R7 L( l  k
    ssl_certificate_key /path/to/ssl.key;
% c- ]$ ^- i  g! N6 R2 A; d% R/ v1 k, q9 z' B
    location / {
7 I5 A- u0 m2 ~, F4 e" ]6 b        proxy_set_header X-Real-IP $remote_addr;
( Q/ T7 p3 R. r+ h3 O  A' \        proxy_set_header Host $http_host;
+ N* R# H; K8 F; d        proxy_pass http://127.0.0.1:2368;
! l& n! H/ ?/ a" o& R) X    }
! M6 G. c. `6 g) H}
- d, i; F8 Y5 B1 `; n```
7 W5 b2 R9 ~; n& |这里我们在http部分新增了一个重定向。如果用户访问http协议的域名地址,就把请求重定向到https协议上的域名地址。3 q9 }% Z$ F0 Y7 E: r" X. H

( v& v* L/ u6 W* i+ |% v3 q1 O1 @3 ?6 Z接下来,我们配置HTTPS服务器。+ e% _) q1 j2 Q# J: a, R. a

+ \. c' O. {6 M& @% S+ M首先我们配置服务器监听的端口为443,在 server_name 后面指定你的域名。
3 R6 O8 c; \& z
  _' j6 ~  C  ?  z然后设定 ssl_certificate 和 ssl_certificate_key 分别指向证书和密钥文件。这里的证书和密钥文件应该放在一个非常安全的位置。: R, F/ j$ w9 [5 D9 i) a$ n

3 t- v2 I$ T/ ]% `' O最后,用location指令将所有请求转发到Ghost的本地端口。# _3 G& @+ W2 g+ O

  }/ A1 z0 p8 O% w3 @8 |7 J步骤3:重启Nginx服务器
3 I( ?" o. g. X! Z$ U2 ]& e4 l) V4 d$ B5 Q2 d  H7 h% o
使用以下命令在服务器上重启Nginx:: ~6 J5 ~! }  Z; W" R3 t

/ ]  P% V7 X- u% Z+ f+ \```bash1 P, y  t/ \$ v# Y! w2 e
sudo service nginx restart
9 O; ~4 b, I! Y```
* C' L- r% H& _$ D: ]1 M* [& v+ w+ y! j9 e7 L1 G1 L: W
步骤4:测试4 p& q# h- L" ~6 t% C4 {+ w

# P, x. Y& B: B7 R& R5 [现在你可以访问https://your-domain.com,此时应该可以看到浏览器地址栏中有一个锁形的图标,这表示你的站点已经成功启用SSL证书。
! g; P; n3 n" U2 M- i
4 ?  g, P: Y# y/ U* D5 C& ^& q这样就完成了将Ghost网站启用HTTPS访问,这个过程可能会有一些细节问题,如果您在安装中遇到问题,可以根据错误提示进行排查。
回复

使用道具 举报

348

主题

566

回帖

3710

积分

管理员

积分
3710
QQ
 楼主| 发表于 2023-5-23 09:21:58 来自手机 | 显示全部楼层
在windows下如何启动和重新启动,或停止nginx?
# V* Z" G0 B  ~1 {7 S2 \) f' r, p5 q
3 u  V, d2 ?; T. Y在Windows下启动、重新启动和停止Nginx,可以执行以下操作:4 u8 H# @. @; m

: L! @) W, f- \) F0 q启动:. X. f, j/ e) L7 J3 V! A

. S5 W1 S! l! v1. 打开命令行,进入Nginx安装目录,例如:`cd C:\nginx`
4 `$ K' s) a2 u" _9 u: k6 z7 j2. 输入命令`start nginx`# s+ p  U- b9 d0 o5 O

2 O& C" T# {4 L, Y5 s, c重新启动:
% h5 M# y( ^* V$ t! ?! Q" \# I8 {! K/ T9 r1 t( i) U
1. 同样进入Nginx安装目录, V3 Z1 A8 y+ J5 {
2. 输入命令`nginx -s reload`
' \. I! h% c0 }' f$ ^3 V* f# x. k5 d4 h# p/ s/ X, r
停止:! ?3 @/ k9 A6 Y# Y# y
$ I6 @' i/ ?" T7 F% ]  X
1. 同样进入Nginx安装目录
6 U4 v1 r3 q1 o9 v  ^; y5 Y2. 输入命令`nginx -s stop`5 H5 O0 n1 T' Q7 T, N
  w# T. i* ^  i3 q5 U6 P0 z) a+ O
需要注意的是,如果你在Windows上使用了Nginx的“Windows Service”服务,那么也可以在“服务”(Service)菜单项中找到Nginx的服务,直接通过“启动”、“重新启动”、“停止”等来操作它。4 K2 N! S9 p+ j; ]0 q; A! S1 E. y
( }" ~; g/ [- B7 f( r/ T9 Q
总之,这些命令将启动Nginx服务器以供使用,重启或停止它。做出更改后,要确保在启动或重新加载Nginx之前测试一下配置更改。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-3-11 12:29 , Processed in 1.213608 second(s), 2 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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