设为首页 收藏本站
查看: 1592|回复: 0

[经验分享] Nginx——强大的web

[复制链接]

尚未签到

发表于 2018-11-10 10:09:41 | 显示全部楼层 |阅读模式
  Nginx——强大的web
  Nginx(发音同 engine x)是一款轻量级的web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好.中国大陆使用nginx网站用户有:新浪、网易、 腾讯等。
  
  
  在安装之前我们需要两个库。Pcre和libevent
  pcre
  (Perl Compatible Regular Expressions)是一个Perl库,包括 perl 兼容的正规表达式库.这些在执行正规表达式模式匹配时用与Perl 5同样的语法和语义是很有用的。 Boost太庞大了,使用boost regex后,程序的编译速度明显变慢。测试了一下,同样一个程序,使用boost::regex编译时需要3秒,而使用pcre不到1秒。因此改用pcre来解决C语言中使用正则表达式的问题。
  libevent
  是一个强大的跨平台的事件通知库,如果不想被多线程困扰,可以考虑这个平台,它从1.2.* 版本开始支持轻量级的http server 开发支持,随后陆续还推出轻量级 DNS server、RPC server 开发支持,这组事件API提供了一种当某个指定文件描述符有效或时间到达时执行某个函数的机制.在使用事件API前必须使用event_init()初始化.
  上传我们需要的两个文件
DSC0000.png

  1.安装libevent库
  拆解文件
DSC0001.png

  安装库并指明安装路径
DSC0002.png

  Make && make install
DSC0003.png

  处理库文件
DSC0004.png

  [root@host libevent]# vim /etc/ld.so.conf.d/libevent.conf
DSC0005.png

  刷新一下内存,再查找一下
DSC0006.png

  处理头文件
DSC0007.png

  下面安装pcre
  查看一下关于pcre库的安装
DSC0008.png

  我们还需要安装pcre-devel-6.6-2.el5_1.7.i386.rpm
DSC0009.png

  创建组合用户
DSC00010.png

  安装nginx
  1、拆包
DSC00011.png

  2、安装
DSC00012.png

DSC00013.png

  执行文件
  /usr/local/nginx/sbin/nginx
DSC00014.png

  3、看一下nginx的配置文件 /etc/nginx/nginx.conf
DSC00015.png

  4、下面我们启动一下nginx试试
DSC00016.png

DSC00017.png

  发现缺少目录,那我们创建之后,在启动一下。
DSC00018.png

  改变一下环境变量,有利于我们以后很好的启动和控制nginx
DSC00019.png

  5、访问以下我们的站点目录
DSC00020.png

  *******************************************************************************
  *******************************************************************************
  加密访问
  第一步:vim  /etc/pki//tls/openssl.cnf
DSC00021.png

DSC00022.png

DSC00023.png

  创建CA需要的需要的3个目录(certs、newcerts、crl)和2个文件(index.txt、serial)
  cd /etc/pki/CA/
  mkdir  certs newcerts crl
  touch index.txt  serial
  echo 01 >serial(给serial一个初始序号)
  生成CA自己的私钥文件,并修改权限,放到自己的私钥存放目录(private/)
DSC00024.png

  cA给自己颁发证书.(生成证书文件cacert.pem)
DSC00025.png

  第二步:建立Nginx的安全目录,并生成相关的私钥和证书文件.
  mkdir -pv /usr/local/nginx/certs
  cd   /usr/local/nginx/certs
  生成私钥文件(nginx.key),并修改权限.
DSC00026.png

  chmod  600  nginx.key
  提取刚才生成的私钥文件,生成请求证书文件(nginx.csr)
DSC00027.png

  将请求证书文件提交给证书颁发机构CA,生成证书文件(nginx.crt).
DSC00028.png

  第三步:编辑配置文件,将我们的站点(www.zzdx.com)配置加密访问.
  vim  /etc/nginx/nginx.conf(修改完配置文件记得重启服务)
DSC00029.png

  第四步:加密访问测试.(为了方便测试:修改主机的Hosts文件)
  Hosts路径(C:\Windows\System32\drivers\etc\HOSTS)
DSC00030.png

  在浏览器的地址栏内输入 (https://www.zzdx.com),测试.
  会提示找不到证书的颁发机构CA,那么我们该感到奇怪了,我们明明建立了CA了啊,而且也有了CA颁发的证书了啊,那为什么会没有呢?
  怎么解决这个问题呢?
  在Apache上把SSL被做成了它的一种模块,用于调用,而且有证书链的感念,所以可以通过证书链找到证书颁发机构。但是这些在Nginx上没有,但还是有解决办法的,下面就是一种好的解决方法:
  既然没有找到CA的链,那我们自己创建一个他们的链不就行了!
  cd  /usr/loacl/nginx/certs/
  cp  /etc/pki/CA/cacert.pem ./
  cat cacert.pem >>nginx.crt(将CA的私钥文件内容从定向到nginx的后面)
  清空浏览器的缓存信息,
  在浏览器的地址栏内输入 (https://www.zzdx.com),再次测试.
  会提示当前证书是由不信任的CA所颁发的,但是也能强制访问的.
DSC00031.png

  下面来解决一下不信任的问题
DSC00032.png

DSC00033.png

DSC00034.png

DSC00035.png

DSC00036.png

DSC00037.png

DSC00038.png

  在浏览器的证书管理里面已经可以查询到我们的CA信息了.
DSC00039.png

DSC00040.png



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-633142-1-1.html 上篇帖子: Django -- 整合apache、nginx 下篇帖子: nginx负载均衡,ssl原理,生成ssl秘钥对,nginx配置ssl
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

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