文章目录
第十四章 构建和配置 Nginx 以与 Web 网关配合使用 (Windows)
本页介绍如何构建和配置
Nginx Web
服务器以与
Windows
上的
InterSystems Web Gateway
配合使用。 (在
Windows
上,其他选项是
Apache
和
IIS
;其他操作系统上的选项有所不同。)
Nginx
是一个开源产品。源代码可以免费下载:
http://nginx.org/
一些预构建的工具包可用于
Windows
,通常比最新的
Nginx
版本晚一些版本。然而,由于扩展必须编译到
Nginx
核心中,因此有必要从源代码本地构建
Web
服务器,以包含对
CSP
的支持。
完成本页面中的步骤后,可以使用
Web Gateway
管理页面进一步配置
Web Gateway
。
Assumptions
此页面假设
CSP/Web Gateway
组件安装在install-dir\csp\
中Web
服务器安装在C:\nginx\
如果系统上的布局不同,请根据需要修改配置指令。
安装
Web Gateway
组件和
CSP
静态文件应按如下方式安装:
Web
网关网络服务守护进程 (NSD - Network Service Daemon
)
CSPnsd.exe
(主二进制文件)CSPnsdSv.exe
(Windows
服务)
这些文件的默认位置是
install-dir\bin
配置和日志文件写入此目录中。
HyperEvents
组件
CSPBroker.js
CSPxmlhttp.js
这些文件的默认位置是
install-dir\csp\broker
如果这些文件要直接由
Web
服务器作为静态组件,请将它们复制到
C:\nginx\html\csp\broker
- 管理门户使用的各种静态资源
管理门户需要大量静态
Web
资源(例如图像文件)。这些文件的默认位置是
install-dir\csp\sys
如果这些文件由
Web
服务器直接提供服务,请将它们复制到
C:\nginx\html\csp\sys
为
CSP
构建
Nginx Web
服务器
大多数
Web
网关功能由
NSD (CSPnsd[Sv].exe)
提供。对于
CSP
访问,可以构建并配置
Nginx
,通过一个小的编译模块与
NSD
进行通信:
ngx_http_csp_module.c
。为方便起见,所有
Web Gateway
安装都包含此源文件。
构建 Nginx 的先决条件:
Microsoft Visual Studio
(版本10
或更高版本):http://www.microsoft.comMSYS2
(来自MinGW
):https://www.msys2.org/- P
erl
(最好是ActivePerl
):https://www.activestate.com/products/perl/ Mercurial
源代码控制客户端:https://www.mercurial-scm.org/
这里给出的构建说明基于
Windows
下构建
Nginx
的官方文档:
http://nginx.org/en/docs/howto_build_on_win32.html
Nginx
文档规定还需要以下第三方附加组件:
PCRE
: http://www.pcre.org/OpenSSL (for SSL/TLS)
https://www.openssl.org/Zlib
: http://zlib.net/
但是,如果最终安装不需要这些组件提供的功能,则可以在没有这些组件的情况下创建功能齐全的服务器。
构建
Nginx
的默认配置脚本,包括上面列出的所有可选模块,如下:
auto/configure \
--with-cc=cl \
--with-debug \
--prefix= \
--conf-path=conf/nginx.conf \
--pid-path=logs/nginx.pid \
--http-log-path=logs/access.log \
--error-log-path=logs/error.log \
--sbin-path=nginx.exe \
--http-client-body-temp-path=temp/client_body_temp \
--http-proxy-temp-path=temp/proxy_temp \
--http-fastcgi-temp-path=temp/fastcgi_temp \
--http-scgi-temp-path=temp/scgi_temp \
--http-uwsgi-temp-path=temp/uwsgi_temp \
--with-cc-opt=-DFD_SETSIZE=1024 \
--with-pcre=objs/lib/pcre-8.44 \
--with-zlib=objs/lib/zlib-1.2.12 \
--with-openssl=objs/lib/openssl-1.1.1k \
--with-openssl-opt=no-asm \
--with-http_ssl_module
可以修改构建过程以排除可选模块:
OpenSSL
- 删除SSL/TLS
功能:删除指令:--with-http_ssl_module
.Zlib
- 删除GZIP
功能:添加指令:--without-http_gzip_module
PCRE
- 删除HTTP
重写功能:添加指令:--without-http_rewrite_module
版权归原作者 yaoxin521123 所有, 如有侵权,请联系我们删除。