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

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

[复制链接]

319

主题

485

回帖

3133

积分

管理员

积分
3133
QQ
发表于 2023-5-23 09:09:35 来自手机 | 显示全部楼层 |阅读模式
要在Windows的NGINX下部署Ghost博客系统,需要执行以下步骤:. u3 S* {' d; g0 x. c; P: L
6 q7 A$ f3 v6 R# A. r
步骤1:安装Node.js
5 s9 A7 s9 x" X. x$ O% f" C- r8 m
- K" Y0 _/ k, {8 u. |/ T在Windows上安装Node.js。这是一个基于JavaScript的服务器端开发环境,使Ghost能够运行。7 f. V1 E7 s) ^. C, ~; s) J; l
3 ^0 ?3 `1 ~+ C: U$ l& D' t( y/ u
步骤2:安装Ghost
  {6 C  e( j- T2 G: U* V: c4 {! M8 a  g9 Z! ~
在Ghost官方网站上下载最新版本的Ghost。解压缩下载的文件并移动到想要安装Ghost的文件夹。然后通过命令行运行`npm install --production`以安装所有必要的依赖项。6 Y; Q% O5 s7 {. j3 @$ s4 [5 Z. T

: G' L9 g; n4 j1 ~步骤3:配置NGINX
5 z- }/ q) ^: M6 H, u1 S$ D7 s8 P. J7 u+ Y8 z- n
安装NGINX。打开文件夹,找到“conf”目录,并编辑nginx.conf文件。在http部分的末尾添加以下内容:2 u! v6 e! o3 H* R+ c/ I

" g0 J: J. }. S```nginx% t3 E# Y! d8 ?" T
server {- @' H+ T; G# m: h2 P7 U- U$ ]
    listen 80;$ Z' M, ^. L' r4 X
    server_name your-domain.com;1 O2 F2 `) T, U1 m4 j

' y& b8 ~4 ]. Q8 R3 B' q$ m    location / {4 |6 W6 c: k. d4 z# D5 X) z
        proxy_set_header X-Real-IP $remote_addr;8 M& L3 l" B; q  J, `
        proxy_set_header Host $http_host;+ ~  b0 ^+ ]& x. h+ H5 D
        proxy_pass http://127.0.0.1:2368;
' ?7 R/ n  K! c3 u9 L. Z    }
8 I6 R9 |6 X# X( l$ X! W; {7 r% n' m}5 m6 V1 R" \- a  n+ [# W" A
```
7 [% o7 N0 ]+ g2 }) J% n9 b1 H8 {0 D' L; i$ G6 Y
将“your-domain.com”替换为你的域名。这样,所有通过http://your-domain.com的访问都将被定向到Ghost服务器的2368端口。
2 I4 r9 e( J% _1 R+ i5 O
5 I# {: B' @- j, P9 V步骤4:启动Ghost9 c$ N) S6 u$ w8 }: J2 C
) c2 Y$ a' K" c" [% L5 U
在Ghost程序文件所在的文件夹中打开命令行,输入`npm start --production`以启动Ghost。现在你可以在浏览器中访问http://your-domain.com。应该可以看到Ghost的欢迎界面。  `, ^& h* d) P5 W: H' v7 ?

9 Q1 i6 D! {. ~8 R6 `0 y默認情況下Ghost将運行在http://localhost:2368上,但是馬上通過Nginx反向代理縮短Ghost的網址,讓Ghost運行在http://your-domain.com上。
$ ?& F! P* i: j; x+ l" O8 F4 ^& l. f& U( |$ J. j& v5 H
这就是在Windows的NGINX下部署Ghost博客系统的简单步骤和路径。
回复

使用道具 举报

319

主题

485

回帖

3133

积分

管理员

积分
3133
QQ
 楼主| 发表于 2023-5-23 09:10:10 来自手机 | 显示全部楼层
在nginx的配置中,需要指定ghost的目录吗?或者说应该指向哪个ghost网站目录?: p! o( V+ T; T0 f% F

& {8 x& l. R- p7 x  O' E在Nginx的配置中,需要指定Ghost的目录或位置,通常需要指定Ghost的主目录。这个主目录通常是Ghost程序包的根目录,即你在步骤2中解压缩的Ghost文件。
4 h' c" t% j7 x! V2 N" E, n
: v( B) Y2 D; ]  p1 w, `, t9 `4 g7 Z在步骤3中,我们通过添加以下内容来指定Ghost的位置:3 C$ }+ z! V: v, b5 D9 D) z. D
& C7 [. l' n. R
```nginx
7 x& w( X2 t( Z9 _8 ^3 D% `- blocation / {' p; W. e9 K1 W0 m
    proxy_set_header X-Real-IP $remote_addr;
, b( }: {2 }4 C+ M. d    proxy_set_header Host $http_host;& g8 ~, A, u6 E& l; [
    proxy_pass http://127.0.0.1:2368;
% N% E- ]" z9 c* ?& p8 u}
8 e1 D% S( I0 F* x, I4 w```
; s+ k/ Z' w4 A/ e! Y. s6 H9 N# g- E4 Z) C; l* s* l( o& A( [) ^9 M
在这里我们使用`proxy_pass`指令来设置Ghost的目录。这里指定的默认值是`http://127.0.0.1:2368`,对应着Ghost的默认端口,这里的意思是把所有通过Nginx访问的请求都通过该地址转发到Ghost。3 m9 L$ k! h* E+ b7 _% D3 W) L
! j( [, ^* E! s! q% U
如果你的Ghost是安装在其他位置,请将“proxy_pass”指向你的ghost安装目录。
) E1 E8 `. `: o, k% A% h+ K
- Q8 A% l$ d' O- v+ e6 r4 E0 \  a  P总结来说,只要在Nginx的配置文件中指定了Ghost的代理位置,即可让Nginx代理Ghost的请求,并将这些请求发送到Ghost的安装目录上。
回复

使用道具 举报

319

主题

485

回帖

3133

积分

管理员

积分
3133
QQ
 楼主| 发表于 2023-5-23 09:13:15 来自手机 | 显示全部楼层
如果ghost站点需要启用https访问,安装ssl证书的话,具体如何实现,需要做哪些设置?9 ^2 G$ `% T  N3 s

1 ^9 r; l& |# X; D$ Y要在Ghost中启用HTTPS访问,需要有SSL证书,并进行许多配置。可以按照以下步骤来安装:$ _0 {! b8 w! z
# W- H( \3 G7 m7 y
步骤1:获取SSL证书1 w) I3 K' H+ q6 P1 t
! K# B) J& Y9 k( |
获取你想要使用的SSL证书,通常是购买或从免费的证书机构(如Let's Encrypt)获取。将SSL证书和密钥文件上传到服务器上。
* |3 X1 R' S5 I7 t% z* o3 D" b7 J, M, J# s+ `1 E
步骤2:修改Nginx配置文件4 O; ~/ b6 @7 `) x( s, d0 P

8 R& u* x4 f' ~% I0 s. a打开Nginx的配置文件,将http部分的内容更改为如下内容:9 s6 o! J( N) E1 }
5 d! s" O' c% f; H
```nginx
! ]4 a7 J& L( w+ I0 z, |/ Fserver {" Z& ~* |1 D9 n- v5 L
    listen 80;. J  N& q4 D2 ?/ w
    server_name your-domain.com;% T, H1 d% t7 V6 d# }5 E
    return 301 https://$server_name$request_uri;
6 K4 ]1 f: R/ l; a6 f8 n}8 j( |) L  a& ?9 |8 z, v
; Y1 b2 M: [7 r( i9 C0 D
server {+ u  v! @/ F+ X8 G- K, F/ }) c8 t
    listen 443 ssl;0 X+ V' D# @' a" x: A
    server_name your-domain.com;
( U1 r$ `6 r9 Y5 c7 N) j1 M% v, N% A2 g# l3 y
    ssl_certificate /path/to/ssl.crt;  d$ Q5 ]& [7 L" `0 e( g. y
    ssl_certificate_key /path/to/ssl.key;
$ L4 z% b6 m( Y4 u2 M# _$ a  T+ ~4 y. P* C, i4 x& ~
    location / {0 }2 Y& W5 b) k5 J
        proxy_set_header X-Real-IP $remote_addr;
6 S3 z) `* o& N% j' c/ u        proxy_set_header Host $http_host;
7 g0 S1 r; I/ B& m        proxy_pass http://127.0.0.1:2368;
; q2 o4 H# z2 k: t% }    }4 H/ y; g4 d! T. ]
}
7 M2 @+ W) Q+ ^5 \+ p```
% l  N1 |5 w0 |这里我们在http部分新增了一个重定向。如果用户访问http协议的域名地址,就把请求重定向到https协议上的域名地址。: F- |2 h: M; _8 C! @

4 c8 }( V, @9 M5 |) x/ N2 @. J+ e- w接下来,我们配置HTTPS服务器。
. p2 ]0 ~0 f) ?& b9 C& w7 |  l3 l: ?; G. g, Q  o! U6 T0 P
首先我们配置服务器监听的端口为443,在 server_name 后面指定你的域名。: }+ O$ p5 P- f2 C- d7 H5 [
0 O# x) C, |9 }( x: G
然后设定 ssl_certificate 和 ssl_certificate_key 分别指向证书和密钥文件。这里的证书和密钥文件应该放在一个非常安全的位置。4 [2 z1 F& `$ ^  ]) M8 q9 p

0 \- u. ?* S! u* X% U, }! S" K6 Y最后,用location指令将所有请求转发到Ghost的本地端口。
* i# t' u  P: ]# D) a( s+ t
  A: _! E# t- y4 R( {步骤3:重启Nginx服务器6 i# f/ ?4 @" g

% |. R+ o$ h* L) Y7 ]6 x! \5 ?使用以下命令在服务器上重启Nginx:% Y0 w9 _6 ~' k+ X; O9 f
0 X& N3 z1 y* q
```bash  U4 }1 a" J1 P" a6 W
sudo service nginx restart: B# @5 }. D; \$ P" f5 S+ z5 ?
```4 Y7 L; Y* G- U' c. @  S
& U9 \  L. ~% j1 w
步骤4:测试8 Y- H5 d; E" y( A9 d/ H) B

  @5 v; r! h7 E; Q  W6 V: b现在你可以访问https://your-domain.com,此时应该可以看到浏览器地址栏中有一个锁形的图标,这表示你的站点已经成功启用SSL证书。& K8 v8 j- _9 e( l
0 t3 A3 B. ^( }5 T; e! @
这样就完成了将Ghost网站启用HTTPS访问,这个过程可能会有一些细节问题,如果您在安装中遇到问题,可以根据错误提示进行排查。
回复

使用道具 举报

319

主题

485

回帖

3133

积分

管理员

积分
3133
QQ
 楼主| 发表于 2023-5-23 09:21:58 来自手机 | 显示全部楼层
在windows下如何启动和重新启动,或停止nginx?& L) T8 @" K$ l2 J/ g
0 f/ |/ j% l: X' U1 L
在Windows下启动、重新启动和停止Nginx,可以执行以下操作:
! U# X; h" M1 U  p
4 L" c) t: i* T/ k# O6 `& H5 M) U启动:( U* D2 w1 Z# t1 A( ]( T: A
8 m5 e. w; E3 L2 {9 i
1. 打开命令行,进入Nginx安装目录,例如:`cd C:\nginx`
5 w( Q4 Y- X: b$ m+ P) z2. 输入命令`start nginx`
( y' X" ?# C8 Q8 `& h8 Z7 ^# D* k' S% z
重新启动:
5 i, v3 C! t; c8 v1 N; y( Y% E. x5 b& x" }, [5 ~6 v
1. 同样进入Nginx安装目录/ Q6 `" A9 H4 e: n" I
2. 输入命令`nginx -s reload`. N/ K# R5 A( l& F7 I
* n+ g7 w6 t; w; b
停止:
3 {& r  _, c) B; n  l4 x# L" h; W1 Q# k* J
1. 同样进入Nginx安装目录8 {- }; r3 d1 C: ^6 N
2. 输入命令`nginx -s stop`. n( t+ i: B7 S4 r

7 |# e7 E& K, u+ Z! |( _! @+ i需要注意的是,如果你在Windows上使用了Nginx的“Windows Service”服务,那么也可以在“服务”(Service)菜单项中找到Nginx的服务,直接通过“启动”、“重新启动”、“停止”等来操作它。- K* A  O6 r' c4 y

; v8 o: S2 ~, U- y1 T总之,这些命令将启动Nginx服务器以供使用,重启或停止它。做出更改后,要确保在启动或重新加载Nginx之前测试一下配置更改。
回复

使用道具 举报

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

本版积分规则

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

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

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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