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

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

[复制链接]

347

主题

564

回帖

3679

积分

管理员

积分
3679
QQ
发表于 2023-5-23 09:09:35 来自手机 | 显示全部楼层 |阅读模式
要在Windows的NGINX下部署Ghost博客系统,需要执行以下步骤:, {/ |+ b) M2 x1 \+ Z
) u! [# ^: L5 F
步骤1:安装Node.js6 \. f6 Y* u, [% c  ^! V
3 M/ L1 d0 Q6 A/ N
在Windows上安装Node.js。这是一个基于JavaScript的服务器端开发环境,使Ghost能够运行。
2 r' F9 M$ t; t, @
9 _9 B; S3 w% P' s步骤2:安装Ghost
8 d5 }6 S# n1 r0 ?. w0 O% z$ m+ ~6 L# K) y  M/ O2 I! Z! Z: `" x
在Ghost官方网站上下载最新版本的Ghost。解压缩下载的文件并移动到想要安装Ghost的文件夹。然后通过命令行运行`npm install --production`以安装所有必要的依赖项。! K5 o* w+ G+ v1 ]0 [
! P/ |8 P) x2 K
步骤3:配置NGINX
/ a5 n6 n) y7 g9 S+ m: t7 W: P* N
" w# {' D( P) e* }安装NGINX。打开文件夹,找到“conf”目录,并编辑nginx.conf文件。在http部分的末尾添加以下内容:
. k& D1 l/ \. x3 f( C( @; |: {* n& K8 g3 k
```nginx
8 Y! F& O; t* B4 y8 ?3 k  {1 ]server {  I8 a; A" t- k0 P
    listen 80;& y5 {, K+ f2 X
    server_name your-domain.com;6 u/ x3 E9 V% v1 W& [% j2 a; c, S, h
5 L1 `7 s7 y: Y/ `
    location / {
3 Q$ t8 w  \- ?        proxy_set_header X-Real-IP $remote_addr;/ m, r7 h& a; E
        proxy_set_header Host $http_host;
, H$ U5 }& S8 s. A        proxy_pass http://127.0.0.1:2368;
3 n8 h9 A3 r$ N" H( s3 M    }
4 w8 g. I% ~* K7 R8 I* E/ y}! h& K8 H4 ?; {$ b* y, ^
```
$ o2 r, Y; y) h+ _' a- ?. `$ B! ?" ^
将“your-domain.com”替换为你的域名。这样,所有通过http://your-domain.com的访问都将被定向到Ghost服务器的2368端口。
( b1 N* M1 i2 l) P, a0 u
: f9 \- I( Z) R; U$ y% W步骤4:启动Ghost
5 w% Z9 A) `% Y  K
6 p. X2 X9 \) E- y+ P; |7 q  c% ]在Ghost程序文件所在的文件夹中打开命令行,输入`npm start --production`以启动Ghost。现在你可以在浏览器中访问http://your-domain.com。应该可以看到Ghost的欢迎界面。
" p" m, h9 Q5 Z5 Z: E
" n2 J* r8 x: e& W默認情況下Ghost将運行在http://localhost:2368上,但是馬上通過Nginx反向代理縮短Ghost的網址,讓Ghost運行在http://your-domain.com上。
7 S6 S' g/ g3 w4 `$ ?$ u. ^2 E' k9 C7 f% d, o, Y( _  f
这就是在Windows的NGINX下部署Ghost博客系统的简单步骤和路径。
回复

使用道具 举报

347

主题

564

回帖

3679

积分

管理员

积分
3679
QQ
 楼主| 发表于 2023-5-23 09:10:10 来自手机 | 显示全部楼层
在nginx的配置中,需要指定ghost的目录吗?或者说应该指向哪个ghost网站目录?0 k* O  S) c% a9 |7 t
( ?1 A+ A) O8 Y2 e  N# Q6 t
在Nginx的配置中,需要指定Ghost的目录或位置,通常需要指定Ghost的主目录。这个主目录通常是Ghost程序包的根目录,即你在步骤2中解压缩的Ghost文件。
: [! ^6 ]. B( I/ F( p
2 B8 K5 }9 B  b7 c在步骤3中,我们通过添加以下内容来指定Ghost的位置:6 Y; Q3 Y& R& b2 S( B) D

) g" B5 J! B' j' q, g4 s```nginx
! a. E0 X! R! F6 S+ [location / {
1 \$ ?4 J. f4 m: h' J    proxy_set_header X-Real-IP $remote_addr;; U: H: |. x( o" ^
    proxy_set_header Host $http_host;' L$ }7 W2 j1 ^; r
    proxy_pass http://127.0.0.1:2368;+ c  @4 S5 O) _6 P5 `
}3 F7 j# b) f) O
```
; B1 t6 U8 ^1 [. j' D0 _; o0 Z  R, v+ a4 v& t! \
在这里我们使用`proxy_pass`指令来设置Ghost的目录。这里指定的默认值是`http://127.0.0.1:2368`,对应着Ghost的默认端口,这里的意思是把所有通过Nginx访问的请求都通过该地址转发到Ghost。3 L, K% g; h3 c0 s: i& @  z; J1 _

7 B$ r/ W4 Y0 \" T如果你的Ghost是安装在其他位置,请将“proxy_pass”指向你的ghost安装目录。
- c4 s4 ~1 D% ~# h9 p& a; d
' A( Z/ r# u- p' }总结来说,只要在Nginx的配置文件中指定了Ghost的代理位置,即可让Nginx代理Ghost的请求,并将这些请求发送到Ghost的安装目录上。
回复

使用道具 举报

347

主题

564

回帖

3679

积分

管理员

积分
3679
QQ
 楼主| 发表于 2023-5-23 09:13:15 来自手机 | 显示全部楼层
如果ghost站点需要启用https访问,安装ssl证书的话,具体如何实现,需要做哪些设置?- Y+ F' F, F! i1 l1 {

0 q+ K9 H$ ^/ ?2 d& W+ r. g要在Ghost中启用HTTPS访问,需要有SSL证书,并进行许多配置。可以按照以下步骤来安装:! O6 S8 Q$ z1 y+ U
) @# `+ c: z1 V& G) ?' A6 }' ?
步骤1:获取SSL证书
: M* J0 D  }) k4 @0 q1 t1 M6 V1 V$ i  m$ _4 r9 x) R, ]
获取你想要使用的SSL证书,通常是购买或从免费的证书机构(如Let's Encrypt)获取。将SSL证书和密钥文件上传到服务器上。' U& J/ `. p5 w; d

% p2 z7 h0 G3 w: E; X& y步骤2:修改Nginx配置文件
4 T1 @; D- M- e
' R5 o# I5 |0 R/ W0 A打开Nginx的配置文件,将http部分的内容更改为如下内容:
( h* D0 \( I1 w6 P; z5 a
+ a0 s: F+ n$ t6 S1 |+ W```nginx
( ^/ ]$ C- G9 S' f/ ?server {
+ o. f- ]! i7 C4 d    listen 80;& i6 K  T- Y, w* P) a- h# k( y
    server_name your-domain.com;
$ h2 K% x( g+ p! X    return 301 https://$server_name$request_uri;6 F" D0 t) {/ f4 V% r2 o
}* [! n5 v. x% z- A' [1 ~+ q' Z

# p1 R( O* }. x2 {( I' v' Dserver {. H" f: p8 D4 ?$ u+ K
    listen 443 ssl;7 n& Z: W( K( Q1 F. r
    server_name your-domain.com;
# e5 Q- Z7 {8 c1 v3 e; A2 n& j8 B) q" d4 t! U9 u
    ssl_certificate /path/to/ssl.crt;
$ @5 s" A, y3 }: D3 H    ssl_certificate_key /path/to/ssl.key;
8 i: J2 U& G3 W( ~2 y$ S( P
+ {' m# {- \, f" v' H. t    location / {2 V6 q: k2 H6 p6 d% r4 l
        proxy_set_header X-Real-IP $remote_addr;+ [! S! V6 n* O
        proxy_set_header Host $http_host;3 d, |( n$ P6 u
        proxy_pass http://127.0.0.1:2368;
- x3 G- Q3 l( P    }. r9 S! Z$ ?6 v9 G  u( U
}  J' N; ]( |! }  B7 a5 a
```8 ^: w' Y# @; {& Y+ W
这里我们在http部分新增了一个重定向。如果用户访问http协议的域名地址,就把请求重定向到https协议上的域名地址。% b! Q# a( z" d7 z8 X' Y- R

' J# U' c2 @2 Y接下来,我们配置HTTPS服务器。8 w# e, o0 m2 g* A
4 k7 y  n. z" [' e/ a! y
首先我们配置服务器监听的端口为443,在 server_name 后面指定你的域名。
3 ]) g! `& N8 g) C) |! ~/ Q+ |. s# q# C) \
然后设定 ssl_certificate 和 ssl_certificate_key 分别指向证书和密钥文件。这里的证书和密钥文件应该放在一个非常安全的位置。
; t) e" z1 e% \2 }: o- k+ _8 Z* [7 @3 r7 x: K( R
最后,用location指令将所有请求转发到Ghost的本地端口。
: s+ T$ b6 b8 _# D. M( Z: Z: T3 A, J0 L, L1 d# W& H
步骤3:重启Nginx服务器! t5 l' Q9 ^6 Z1 P& a4 R* s

) S7 H, J- b$ o: H使用以下命令在服务器上重启Nginx:5 z% O  E2 }7 ^  p0 W! T+ X! G
8 \4 t; e! c! I$ c
```bash
9 R; [) _$ G& W" p" a3 ^sudo service nginx restart
  V& v+ I" o  G- r& X- m```
6 t* y' X4 H# X4 W& m: C, t8 f. V2 H& L# X2 I1 j
步骤4:测试# `( }! x$ P. ?- q% |  ~# }' f

& P/ S9 X: t1 a, U现在你可以访问https://your-domain.com,此时应该可以看到浏览器地址栏中有一个锁形的图标,这表示你的站点已经成功启用SSL证书。
  }, |3 x! i2 g& h
) ]$ {% c/ L8 t" l这样就完成了将Ghost网站启用HTTPS访问,这个过程可能会有一些细节问题,如果您在安装中遇到问题,可以根据错误提示进行排查。
回复

使用道具 举报

347

主题

564

回帖

3679

积分

管理员

积分
3679
QQ
 楼主| 发表于 2023-5-23 09:21:58 来自手机 | 显示全部楼层
在windows下如何启动和重新启动,或停止nginx?- B) D+ R% Z5 R( _% b0 w- R9 k$ m
( y  `! Y) o' n$ s2 Q, E. O5 t5 h3 b
在Windows下启动、重新启动和停止Nginx,可以执行以下操作:
+ F) p: v: P1 \' f0 U- Y: w! x% N; o! D- Z( s
启动:
+ y9 A5 X6 I4 {* \; U
& C* E# d! P5 o2 y& Z2 I# }( ^1. 打开命令行,进入Nginx安装目录,例如:`cd C:\nginx`
4 K# Z( Y. F" h: W. d! ]3 G2. 输入命令`start nginx`* F; k! b8 r  r9 i4 @" T
! I% ~. f0 w( f+ Q6 E
重新启动:
* i* U  M4 P7 Y& m! C9 l
6 A5 q$ h- \# x' c1. 同样进入Nginx安装目录
# @3 ]$ M7 A" y5 i5 `# T: D" x* r2. 输入命令`nginx -s reload`) Q& B, J% E# k

$ V8 p6 D. N$ [% J7 X停止:
& [1 c3 S) Y: B/ O2 c2 d7 m* \3 {( A
# o. Z! \  r9 q7 y3 v1. 同样进入Nginx安装目录
  n: v$ J; h1 X) ?/ K2. 输入命令`nginx -s stop`+ ^6 D/ g! s( v6 D8 ]. _: u
1 J  D$ R4 @( {9 \/ S* e% z1 H
需要注意的是,如果你在Windows上使用了Nginx的“Windows Service”服务,那么也可以在“服务”(Service)菜单项中找到Nginx的服务,直接通过“启动”、“重新启动”、“停止”等来操作它。
$ t' ]# W- b+ }. U# @/ j7 q, @. c: ?3 N3 F$ \" r$ Z+ b: x
总之,这些命令将启动Nginx服务器以供使用,重启或停止它。做出更改后,要确保在启动或重新加载Nginx之前测试一下配置更改。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-2-10 16:46 , Processed in 0.013130 second(s), 2 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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