• nginx 安装遇到的问题


            今天想学学 nginx,于是先把它安装起来。按照 http://nginx.org/en/linux_packages.html 上面的方法,在我的 ubuntu 虚拟机上很容易地就安装好了。可是要运行的时候,找了半天也没找到。搜了一下,才知道是放在了 /etc/init.d 下,可是配置文件又不知道在哪放着了。感觉这样安装完后很不方便,于是下载了 source,根据 nginx.org/en/docs/configure.html 上面说的安装,当然先把前面装的卸载了。需要的 PCRE 可以在 https://ftp.pcre.org/pub/pcre/ 下载, zlib 可以在 http://zlib.net/ 下载。

    在解压 source 后的目录下,运行如下命令:

     ./configure --prefix=/opt/programs/nginx-1.12.2 --with-http_ssl_module --with-http_stub_status_module --with-pcre=/opt/programs/pcre-8.41 --with-openssl=/usr/bin/openssl --with-zlib=/opt/programs/zlib-1.2.11

    一开始没有加 --with-openssl=/usr/bin/openssl 这个参数,会报错,说找不到 openssl,我明明是安装的,上网找了一下,才发现安装的 openssl 的执行文件不在 ./configure 默认搜索的几个目录下。加上这个参数后,就没问题了。

           上面命令成功后,需要运行如下命令才是真正安装:

         make && make install

    让我崩溃的事情发生了,上面下载的 PCRE 和 zlib 我都只是解压了,并没有安装,运行上面的命令时报错了(“recipe for target '/opt/programs/pcre-8.41/Makefile' failed”),看来还要安装 PCRE 和 zlib, 安装时候,遇到了很多依赖的包的版本不一致而无法安装的问题,有种崩溃的感觉。不知道为什么按照第一种(package)的方式为什么就没有这些问题。突然想起来,以前这台虚拟机连 mysql 安装都有问题,也是包依赖版本啥的产生的问题,试了网上的各种方法都解决不了。还是弄一台新的虚拟机试一下吧。在新装的虚拟上,执行下面的操作,毫无阻碍的成功了。在装新的虚拟机的时候看到有说淘宝在 nginx 的基础上,添加了一些功能,并完全兼容 nginx,详见 http://tengine.taobao.org,于是我装的是这上面的 tengine

    1. tar -zxvf tengine-2.2.2.tar.gz

    2. cd tengine-2.2.2

    3. apt-get install make

    4. apt-get install libpcre3 libpcre3-dev (会安装需要的 pcre)

    5. apt-get install zlib1g-dev (会安装需要的 zlib)

    6. apt-get install openssl libssl-dev  (安装需要的 openssl)

    7. ./configure --prefix=/opt/programs/tengine   

      --error-log-path=/var/log/nginx/error.log

      --http-log-path=/var/log/nginx/access.log

      --pid-path=/var/run/nginx/nginx.pid 

      --lock-path=/var/lock/nginx.lock

      --with-http_ssl_module

      --with-http_flv_module

      --with-http_stub_status_module

      --with-http_gzip_static_module

      --http-client-body-temp-path=/var/tmp/nginx/client/

      --http-proxy-temp-path=/var/tmp/nginx/proxy/

      --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/

      --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi

      --http-scgi-temp-path=/var/tmp/nginx/scgi

      --with-pcre  (不能直接复制,需去掉换行及 “” 符号)

    8. make && make install

    运行nginx: /opt/programs/tengine/sbin/nginx

    如果我们修改了配置文件,可以运行以下命令来检查配置是否正确:  /opt/programs/tengine/sbin/nginx -t

    停止 nginx:/opt/programs/tengine/sbin/nginx -s stop

    重启 nginx:/opt/programs/tengine/sbin/nginx -s reload

  • 相关阅读:
    LeetCode 链表题总结
    分布式系统 MIT 6.824 Lab 1: MapReduce 准备
    Consul 入门(二)
    Consul 入门
    IDEA批量修改变量快捷键
    Spring源码解析-JdbcTemplate
    SpringMVC源码解析-HTTP请求处理和分发
    SpringMVC源码解析-DispatcherServlet启动流程和初始化
    发现一个网站可以看英文版的harry potter小说,好东西分享一下哈
    TypeSrcript如何引入第三方库 如果加d.ts以及async await如何使用 demo,只有代码,文字后续补充
  • 原文地址:https://www.cnblogs.com/langfanyun/p/8460197.html
Copyright © 2020-2023  润新知