一、前言
在计算机网络中,Nginx是一种轻量级的HTTP应用程序服务器,也是一个反向代理服务器和电子邮件(IMAP / POP3)代理服务器。它最初由俄罗斯的程序员Igor Sysoev编写,并于2004年首次公开发布。绝大多数情况下,Nginx被用于大型Web应用程序中,作为负责接收和代理HTTP请求的前端Web服务器,或加载均衡器,它还可以用作邮件代理代理。
云服务器(Cloud Server)是一种基于互联网的服务器,具有高可用、高灵活和高性能等特点,对于各类Web应用程序的开发、测试、部署和运维等工作都非常适用。本篇文章介绍如何在云服务器上部署和配置Nginx,包括安装、启动停止、配置虚拟主机和SSL证书等内容,旨在帮助初学者快速了解、掌握和应用Nginx的相关技术。
二、Nginx安装
在开始配置Nginx前,需要先在云服务器上安装Nginx,包括下载、解压、编译和安装等步骤。本文以CentOS操作系统为例,详述如何安装和配置Nginx。
1. 下载Nginx
在终端中执行下面的命令,从官网下载最新版本的Nginx安装包。
“`
$ wget https://nginx.org/download/nginx-1.20.1.tar.gz
“`
2. 解压Nginx
在终端中执行下面的命令,解压下载好的Nginx安装包。
“`
$ tar -zxvf nginx-1.20.1.tar.gz
“`
3. 安装Nginx依赖包
在终端中执行下面的命令,安装编译Nginx所需要的依赖包。
“`
$ yum install gcc gcc-c autoconf automake make
$ yum install pcre pcre-devel zlib zlib-devel openssl openssl-devel
“`
4. 编译Nginx
在终端中进入解压后的Nginx目录,执行下面的命令,编译Nginx。
“`
$ cd nginx-1.20.1
$ ./configure –prefix=/usr/local/nginx –with-http_ssl_module –with-http_stub_status_module
$ make
$ make install
“`
其中,–prefix=/usr/local/nginx 表示安装目录为/usr/local/nginx,–with-http_ssl_module表示开启SSL支持,–with-http_stub_status_module表示开启状态监控支持。
5. 验证Nginx安装
在终端中执行下面的命令,启动Nginx:
“`
$ /usr/local/nginx/sbin/nginx
“`
然后在浏览器中输入云服务器的IP地址,如果看到Nginx默认页面,说明Nginx已经安装并且启动成功。
停止Nginx可以直接执行下面的命令:
“`
$ /usr/local/nginx/sbin/nginx -s stop
“`
三、Nginx配置
Nginx的配置文件是nginx.conf,该文件控制Nginx的行为,包括监听端口、默认主机、虚拟主机、SSL证书和状态监控等等。本节主要介绍Nginx配置文件的相关内容和编辑方法。
1. 配置监听端口
在nginx.conf文件中找到下面这一行:
“`
listen 80 default_server;
“`
其中80表示Nginx监听的端口号,可以按需修改。
2. 配置默认主机
在nginx.conf文件中找到下面这一行:
“`
server_name _;
“`
其中_表示默认主机,可以根据需求修改。
3. 配置虚拟主机
在nginx.conf文件末尾添加如下配置示例,用于配置虚拟主机。
“`
server {
listen 80;
server_name www.example.com;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
}
“`
其中,listen表示虚拟主机监听的端口号,server_name表示虚拟主机的域名或IP地址,root表示虚拟主机的根目录,index表示虚拟主机的默认首页,location表示虚拟主机的URL路径。
4. 配置SSL证书
在nginx.conf文件中找到下面这一行:
“`
listen 443 ssl http2 default_server;
“`
其中443表示Nginx监听的SSL端口号,ssl表示启用SSL协议,http2表示启用HTTP/2协议,可以按需修改。
在nginx.conf文件末尾添加如下配置示例,用于配置SSL证书。
“`
server {
listen 443 ssl http2;
server_name www.example.com;
ssl_certificate /etc/nginx/certs/server.crt;
ssl_certificate_key /etc/nginx/certs/server.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
}
“`
其中ssl_certificate表示SSL证书文件的路径,ssl_certificate_key表示SSL证书私钥文件的路径,其他参数表示SSL协议的相关配置参数。
5. 配置状态监控
在nginx.conf文件末尾添加如下配置示例,用于配置状态监控。
“`
location /nginx_status {
stub_status on;
access_log off;
allow 127.0.0.1;
deny all;
}
“`
其中,location表示状态监控URL路径,stub_status表示开启状态监控,access_log表示关闭访问日志,allow表示允许指定IP访问,deny表示禁止其他IP访问。
四、Nginx优化
Nginx是一款高性能的Web服务器,但是在使用过程中也存在一些性能瓶颈和优化点,需要针对性地调整和优化。本节主要介绍如何优化Nginx的性能。
1. 调整工作进程数
Nginx默认会启动1个Master进程和1个Worker进程,可以通过修改nginx.conf文件中的worker_processes参数来调整工作进程数。
“`
worker_processes auto;
“`
其中auto表示根据服务器CPU核心数自动设置工作进程数,也可以手动设置具体的数字。
2. 调整最大连接数
Nginx默认会限制最大连接数为1024,可以通过修改nginx.conf文件中的worker_connections参数来调整最大连接数。
“`
worker_connections 1024;
“`
可以根据服务器配置和负载情况,酌情调整最大连接数。
3. 启用Gzip压缩
Nginx可以通过启用Gzip压缩来优化Web页面的传输速度和带宽占用,可以在nginx.conf文件中添加如下配置来启用Gzip压缩。
“`
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml;
“`
其中,gzip表示启用Gzip压缩,gzip_min_length表示启用Gzip压缩的最小文件大小,gzip_buffers表示指定缓存大小,gzip_http_version表示Gzip压缩的HTTP版本,gzip_comp_level表示Gzip压缩的级别,gzip_types表示启用Gzip压缩的MIME类型。
4. 启用静态文件缓存
Nginx可以通过启用静态文件缓存来减少磁盘I/O和网络带宽占用,可以在nginx.conf文件中添加如下配置来启用静态文件缓存。
“`
location ~* \\.(gif|jpg|png|js|css)$ {
expires 30d;
log_not_found off;
}
“`
其中,location表示需要启用静态文件缓存的URL路径,~*表示使用正则表达式匹配文件类型,expires表示设置缓存时间,log_not_found表示关闭404错误日志记录。
五、总结
Nginx是一款高性能的Web服务器,它的配置和优化都需要一定的技术功底和实践经验。本篇文章介绍了在云服务器上部署和配置Nginx的相关技术,包括安装、启动停止、配置虚拟主机和SSL证书等内容,也介绍了Nginx的优化方法和技巧。希望对初学者掌握和应用Nginx技术具有一定的参考和借鉴价值。
以上就是小编关于“云服务器怎么配置nginx”的分享和介绍
西部数码(west.cn)是经工信部、ICANN、CNNIC认证的全球顶级域名注册服务机构,是中国五星级域名注册商!有超过2000万个域名通过西部数码注册并管理,超过100万个网站托管在西部数码云服务器和虚拟主机。西部数码支持数十个顶级域名的注册与管理,支持批量查询、批量注册、批量解析、智能解析、批量过户等便捷好用的功能,拥有非常好的使用体验。
目前,西部数码域名注册正在特价,最低仅需1元!
更多详情请见:https://www.west.cn/services/domain/
西部数码域名抢注预定,支持抢注各类高价值老域名,支持“建站历史、百度收录、百度权重、历史外链、百度评价、搜狗反链”等综合检索功能,共计26项!可快速精准定位到您想要定位到的各类精品域名!同时,西部数码域名抢注集成了全球多个抢注商(近200个抢注商,还将陆续增加),整理出13条抢注通道,从根本上提升了抢注成功率!
其中,1号通道,实测抢注成功率高达99% 。每天西部数码预释放功能还会释放若干优质过期域名,可以直接抢注竞拍。
赶紧预订抢注心仪的优质域名吧:https://www.west.cn/services/grab/index.asp