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

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

[复制链接]

335

主题

520

回帖

3433

积分

管理员

积分
3433
QQ
发表于 2023-5-23 09:09:35 来自手机 | 显示全部楼层 |阅读模式
要在Windows的NGINX下部署Ghost博客系统,需要执行以下步骤:
! o# R6 f. f% J7 q6 M3 ?4 o. k) Z5 T2 w6 v3 @7 Q# W: M, Q9 j* ~
步骤1:安装Node.js
& o  w2 _+ `" j0 |1 R
8 x5 l1 S5 b9 f4 a  v( O, Y在Windows上安装Node.js。这是一个基于JavaScript的服务器端开发环境,使Ghost能够运行。2 ?( _4 n/ R0 M* U. L5 X: O4 k, ?
: Z: f) [2 ^3 [. O; K
步骤2:安装Ghost
. H4 O3 R9 ]+ i3 p- Z
) r5 U" h0 x. H在Ghost官方网站上下载最新版本的Ghost。解压缩下载的文件并移动到想要安装Ghost的文件夹。然后通过命令行运行`npm install --production`以安装所有必要的依赖项。
, |4 n& y$ L* @+ e1 [+ J' k* G! V0 ~* @" V
步骤3:配置NGINX
, z4 Q! v& P* u9 {# ]9 R2 }% s7 u# P3 W# b
安装NGINX。打开文件夹,找到“conf”目录,并编辑nginx.conf文件。在http部分的末尾添加以下内容:
. u$ W" |8 g, O/ x8 ^' k6 Q6 R( @) P" h' Q: A
```nginx3 X, q9 I2 M/ j# x) O( g  ]5 d
server {7 G. |  p! @  K; \1 @% C" r+ f
    listen 80;2 L0 x! y! q4 m1 Z+ o- @( _. r8 [
    server_name your-domain.com;
$ g$ P3 [) ?2 F4 C* R0 `
" N3 A& u( u( c- M# d    location / {* p- @  ^) Z$ X
        proxy_set_header X-Real-IP $remote_addr;
. H7 \' M+ |% ~% C+ R8 ?        proxy_set_header Host $http_host;* |0 Y, N& ~+ _! {1 G  y
        proxy_pass http://127.0.0.1:2368;+ p7 ^' U; i& ~/ @1 h9 ~) H" C
    }
: f+ n. z7 \& T+ q, f}9 v7 W; N3 H) k1 K" a
```
; V6 l, S  M: K- ^% }
2 {/ e$ U2 j; v! I+ @( W1 m/ _& c4 d! n将“your-domain.com”替换为你的域名。这样,所有通过http://your-domain.com的访问都将被定向到Ghost服务器的2368端口。
4 o6 _& l0 k) {2 l( T- i4 M' ~
% v% T0 \' N9 \. M; Z8 Z  o步骤4:启动Ghost
4 O  z8 L4 h! U# [' k) @4 c0 F  b5 {/ j- x2 v
在Ghost程序文件所在的文件夹中打开命令行,输入`npm start --production`以启动Ghost。现在你可以在浏览器中访问http://your-domain.com。应该可以看到Ghost的欢迎界面。! O6 U% d4 Y) ^5 ]
, |5 T# u' r9 B& |8 e% L, [* J* B$ e
默認情況下Ghost将運行在http://localhost:2368上,但是馬上通過Nginx反向代理縮短Ghost的網址,讓Ghost運行在http://your-domain.com上。
1 x. l" e% f! z/ U( J
. o4 M5 J! |3 ]; Z' T这就是在Windows的NGINX下部署Ghost博客系统的简单步骤和路径。
回复

使用道具 举报

335

主题

520

回帖

3433

积分

管理员

积分
3433
QQ
 楼主| 发表于 2023-5-23 09:10:10 来自手机 | 显示全部楼层
在nginx的配置中,需要指定ghost的目录吗?或者说应该指向哪个ghost网站目录?) O0 [% s' x9 p  ?: a

. X1 Z& d) B( n3 J在Nginx的配置中,需要指定Ghost的目录或位置,通常需要指定Ghost的主目录。这个主目录通常是Ghost程序包的根目录,即你在步骤2中解压缩的Ghost文件。
& E1 L' o, \- K6 b% e4 Y5 t0 P. R, K, }; L% v# q; V7 U# H2 p. t9 ~
在步骤3中,我们通过添加以下内容来指定Ghost的位置:5 I8 z9 l5 Q0 ]; u4 W) @
# f; G7 c* r: Y! v! k6 X+ k$ v
```nginx
& n" o8 E. \7 hlocation / {
* n. r( o% P7 v: o  f6 o    proxy_set_header X-Real-IP $remote_addr;
% ]1 j7 y% p& D+ }8 l3 S    proxy_set_header Host $http_host;
: r: B1 q, Y! V# v- x    proxy_pass http://127.0.0.1:2368;
2 t- O& o4 \9 \8 H}
4 [- m4 G: u6 h7 |( H% t```
0 _; q  |6 w) u9 q5 f: O2 N  U- c- b$ ]6 s, k4 c# a
在这里我们使用`proxy_pass`指令来设置Ghost的目录。这里指定的默认值是`http://127.0.0.1:2368`,对应着Ghost的默认端口,这里的意思是把所有通过Nginx访问的请求都通过该地址转发到Ghost。
: I, e4 n8 j+ h0 s1 s: I9 |* d4 c" N
( Q( e! p9 p. t* d如果你的Ghost是安装在其他位置,请将“proxy_pass”指向你的ghost安装目录。9 A, _' e% L( n3 T" @- q
- r! y( m+ B6 g% Q* U3 {8 K5 @
总结来说,只要在Nginx的配置文件中指定了Ghost的代理位置,即可让Nginx代理Ghost的请求,并将这些请求发送到Ghost的安装目录上。
回复

使用道具 举报

335

主题

520

回帖

3433

积分

管理员

积分
3433
QQ
 楼主| 发表于 2023-5-23 09:13:15 来自手机 | 显示全部楼层
如果ghost站点需要启用https访问,安装ssl证书的话,具体如何实现,需要做哪些设置?) w. q5 L. I/ |: z2 D; H
0 K3 [# [9 W, |% r0 J& c
要在Ghost中启用HTTPS访问,需要有SSL证书,并进行许多配置。可以按照以下步骤来安装:7 F7 `% B4 h  \  ~$ v  u) Y
- W7 R: |) {! I4 L6 q
步骤1:获取SSL证书* a6 W4 b6 u2 |* U' V

) a0 H$ C) F/ y6 {* ?7 |* @/ Z5 L获取你想要使用的SSL证书,通常是购买或从免费的证书机构(如Let's Encrypt)获取。将SSL证书和密钥文件上传到服务器上。
  t* P. `" B3 t
1 ?: N6 ^* p3 v步骤2:修改Nginx配置文件
* W( F6 `, ^/ `6 x6 `% W! a: Z; {4 {
0 {- ?- I  P# ^! h+ G" H& P) _打开Nginx的配置文件,将http部分的内容更改为如下内容:& x/ s8 P4 K5 X+ m
9 G4 ?* ~  A! q  p6 D
```nginx1 ?" o  S) A1 v3 ~0 |* p' U
server {: L$ j  j; v7 n" v- ?" e! ~# W
    listen 80;
. Q- o; }8 [, E9 f    server_name your-domain.com;
3 }2 B3 S" k% Q    return 301 https://$server_name$request_uri;
  e4 Q+ E. L4 }1 D}6 ]8 r3 Y% R# v/ Q# _4 ?
3 A6 ~2 o# U+ q, l/ n2 d, h
server {2 i3 k9 E2 v7 G. p- J- a
    listen 443 ssl;' j% _/ M; g- C  p0 L
    server_name your-domain.com;7 b# j- W/ I+ z" q+ [6 Y/ i8 {1 v. y
7 V- u) d6 q4 Z- X* g
    ssl_certificate /path/to/ssl.crt;" E& v6 }% k4 o9 [& d3 O% d# k
    ssl_certificate_key /path/to/ssl.key;! o5 G0 x9 e; q! B& V

6 i8 ~: x/ ?! ?7 h0 A1 E    location / {9 S5 u4 K% K6 C2 C: R  j9 u
        proxy_set_header X-Real-IP $remote_addr;
* W# G2 @, N# h, @+ x: t5 \0 R. k* e        proxy_set_header Host $http_host;4 Z9 k6 X% {5 H
        proxy_pass http://127.0.0.1:2368;* D! q$ U0 D3 Q9 D  p
    }" }" }5 e$ N9 a7 K: z0 t8 L5 W
}2 E1 d- f+ n; s# a4 D1 l
```5 P! q; q& E# ]8 o8 p' {3 z( Z+ m
这里我们在http部分新增了一个重定向。如果用户访问http协议的域名地址,就把请求重定向到https协议上的域名地址。
9 Y7 U3 a0 T( q. [) U+ K' s2 t* y& g% R; m3 m9 o/ U3 _% I
接下来,我们配置HTTPS服务器。9 M- k. g) a. R  D: J/ a6 d' D

0 w5 Y6 D- V% H首先我们配置服务器监听的端口为443,在 server_name 后面指定你的域名。
0 L7 u$ C8 {! l& U2 ^  S
3 e! N$ v" [+ {' ?1 q- L) A0 m然后设定 ssl_certificate 和 ssl_certificate_key 分别指向证书和密钥文件。这里的证书和密钥文件应该放在一个非常安全的位置。
$ j" B* j- l$ A, v/ g" S) l9 u& F) X4 N
最后,用location指令将所有请求转发到Ghost的本地端口。
: e& T4 g  C; [4 j4 i( ?
2 N  Y& y: H# [. O! p步骤3:重启Nginx服务器
: v6 o, K* G! X" ~3 ~  U
, h$ {+ u( Q; l! ^使用以下命令在服务器上重启Nginx:( ]' F# @8 G( B
0 v. [! C- r0 X4 T8 P
```bash
9 j% O5 `4 O" B. usudo service nginx restart) I) T, _# B- ]8 c) g& \* E% P
```/ H% m8 g4 `6 \7 P" s8 W
, m# u1 o* w9 h4 e7 Q* j- _! B
步骤4:测试0 S- U1 [1 u* b# ]7 B
& w5 r2 |6 z5 E
现在你可以访问https://your-domain.com,此时应该可以看到浏览器地址栏中有一个锁形的图标,这表示你的站点已经成功启用SSL证书。% o7 c7 c6 J/ j8 T+ B
. N1 S+ O2 [5 f7 @
这样就完成了将Ghost网站启用HTTPS访问,这个过程可能会有一些细节问题,如果您在安装中遇到问题,可以根据错误提示进行排查。
回复

使用道具 举报

335

主题

520

回帖

3433

积分

管理员

积分
3433
QQ
 楼主| 发表于 2023-5-23 09:21:58 来自手机 | 显示全部楼层
在windows下如何启动和重新启动,或停止nginx?- ~: t" w4 W7 G% [8 h7 b# }

# S% ~* R" s' H! N" _9 }$ |' V在Windows下启动、重新启动和停止Nginx,可以执行以下操作:( h) {- b$ h# H' ]! N
# }+ ~5 P& ^. a9 ^
启动:
3 c& Z5 b' B; o4 r& `9 l8 y3 I8 g
' U2 ~4 o: u6 K' g1. 打开命令行,进入Nginx安装目录,例如:`cd C:\nginx`
) o  A3 b0 \* [& |2. 输入命令`start nginx`
5 E4 r0 e9 n" m: ^" Q
0 U5 r' F4 M4 W6 Y; P重新启动:
% {, e3 p9 Y3 b) f( \
; _: C1 I) ]) G  s- ^, ?4 @: C* J1. 同样进入Nginx安装目录
9 |! g9 j* T& p$ R+ @5 d2. 输入命令`nginx -s reload`
9 M. `8 ^7 W& W% m- g# D
* d* r! k. p9 g$ |/ c. Y停止:/ Z% E- M( a  w* {$ J3 W
7 |* r8 K8 k! Y, K. {
1. 同样进入Nginx安装目录' M" L: O3 X# e' K$ Y4 `" A; r8 s
2. 输入命令`nginx -s stop`
- H3 p! n2 q! r8 Z( K( |8 M+ D7 q  H) _" I5 t0 H
需要注意的是,如果你在Windows上使用了Nginx的“Windows Service”服务,那么也可以在“服务”(Service)菜单项中找到Nginx的服务,直接通过“启动”、“重新启动”、“停止”等来操作它。
0 k3 U  e- [$ \3 G. |1 C! y3 f6 m
1 m' A' P7 I9 ]$ Q总之,这些命令将启动Nginx服务器以供使用,重启或停止它。做出更改后,要确保在启动或重新加载Nginx之前测试一下配置更改。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-16 21:40 , Processed in 0.069672 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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