Nginx
1 基础知识
Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器
Nginx 同时也提供了IMAP/POP3/SMTP服务
Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的
Nginx第一个公开版本0.1.0发布于2004年10月4日。
Nginx源代码以类BSD许可证的形式发布
Nginx因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名
2 最佳实践
2.1 系统环境
2.1.1 系统信息
OS = CentOS 7.x x86_64
IP Addresses = 10.168.0.80
Host Name = www.cmdschool.org
2.1.2 配置防火墙
firewall-cmd --permanent --add-service http --add-service https firewall-cmd --reload firewall-cmd --list-all
2.1.3 关闭selinux
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config setenforce 0
2.2 准备工作
2.2.1 配置yum源
yum install -y http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
注:其他版本或系统的源请参阅以下链接,
http://nginx.org/packages/
2.2.2 安装常用工具
yum install -y vim
2.3 部署应用程序
yum install -y nginx
2.4 配置Nginx
2.4.1 创建应用程序目录
mkdir -p /var/www/www.cmdschool.org
2.4.2 配置http虚拟服务器
cp /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/www.cmdschool.org_80.conf vim /etc/nginx/conf.d/www.cmdschool.org_80.conf
保留以下内容:
server { listen 80; server_name www.cmdschool.org; location / { root /var/www/www.cmdschool.org; index index.html index.htm index.php; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } }
2.4.3 配置https虚拟服务器(可选)
cp /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/www.cmdschool.org_443.conf vim /etc/nginx/conf.d/www.cmdschool.org_443.conf
确认存在如下内容:
server { listen 443; server_name www.cmdschool.org; ssl on; ssl_certificate 1_www.cmdschool.org_bundle.crt; ssl_certificate_key 2_www.cmdschool.org.key; ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; location / { root /var/www/www.cmdschool.org; index index.html index.htm index.php; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } }
注:证书请自行申请,这里不详述
2.4.4 配置nginx服务
systemctl start nginx.service systemctl enable nginx.service
2.5 测试服务
2.5.1 创建测试页
echo www.cmdschool.org > /var/www/www.cmdschool.org/index.html
2.5.2 配置名称解析
notepad \Windows\System32\drivers\etc\hosts
增加以下内容,
10.168.0.80 www.cmdschool.org
注:以上仅适用于测试环境的Windows客户端,生产环境请使用DNS实现,Linux客户端请使用如下命令,
echo '10.168.0.80 www.cmdschool.org' >> /etc/hosts
2.5.3 测试虚拟服务
http://www.cmdschool.org
https://www.cmdschool.org
参阅文档
======================
官方的yum源
—————-
http://nginx.org/packages/
没有评论