Nginx 是一款高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。在Web项目应用中是构建Web服务器的一个重要工具,通过Nginx实现反向代理服务,实现负载均衡,也可配合使用Lua脚本实现其他各种复杂的服务器特性,以下是 Nginx 的下载、安装、配置及启动的步骤。
1. 下载并安装 Nginx 软件
下面以 Linux 系统为例,展示在Linux系统上从源代码编译安装 Nginx 的一般步骤。
a:安装编译工具及依赖库
通过使用 yum 安装必要的编译工具和库文件:
yum install -y gcc gcc-c++ autoconf automake make zlib zlib-devel openssl openssl-devel pcre pcre-devel
b:下载 Nginx 源代码
首先下载Nginx最新版本nginx-1.27.2,或者访问 Nginx 官网 下载最新版本的 Nginx 源代码。
然后将代码上传至服务器指定目录,比如/usr/local/nginx-src,并执行如下命令解压:
cd /usr/local/src
tar -zxvf nginx-latest.tar.gz
cd nginx-* # 进入解压后的目录,* 为实际版本号
c:编译安装 Nginx
在 Nginx 源码目录下执行Nginx的编译和安装命令:
./configure \
--prefix=/usr/local/nginx \
--sbin-path=/usr/sbin/nginx \
--conf-path=/etc/nginx/nginx.conf \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--pid-path=/var/run/nginx.pid \
--lock-path=/var/run/nginx.lock \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi \
--with-http_ssl_module \
--with-http_gzip_static_module \
--with-pcre \
# 可以根据需要添加其他模块
make && make install
2. Nginx配置文件设置
Nginx 的配置文件一般位于/etc/nginx/nginx.conf。根据实际需求对此配置文件进行修改,包括设置用户、工作进程数、错误日志格式及存放目录等。
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
#gzip on;
include /etc/nginx/conf.d/*.conf;
}
3. Nginx 的服务器块配置
在 Nginx 中,服务器块用于定义如何处理对特定域名或 IP 地址的请求。通常,这些配置位于 /etc/nginx/conf.d/ 目录下的单独文件中。
server {
listen 80;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
4. 检查Nginx 配置
在修改配置后,使用以下命令检查配置文件的语法是否正确:
nginx -t
如果显示 syntax is ok 和 test is successful,则表示配置文件没有语法错误。
5. 启动 Nginx 服务
在配置检查正确以后,可以使用以下命令启动 Nginx 服务:
nginx
或者可以使用以下命令管理服务:
systemctl start nginx
systemctl enable nginx # 设置开机自启
命令执行以后,正常情况下Nginx 服务将启动并在监听配置的端口(默认为 80 端口)进行监听,接下来就可以接受并处理 HTTP 请求了。