当前位置: 首页 > news >正文

Linux下Nginx源码安装

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

centos6.6_x64 平台

首先,先安装gcc++ yum install gcc gcc-c++

一、准备工作

1、下载pcre, pcre 是为了为了重写rewrite 

 ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/ 下载最新的 PCRE 源码包,使用下面命令下载编译和安装 PCRE 包

cd /usr/local/src

wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.38.tar.gz

tar -zxvf pcre-8.38.tar.gz

2、下载zlib,是为了gzip压缩功能

http://zlib.net/zlib-1.2.8.tar.gz 下载最新的 zlib 源码包

cd /usr/local/src

wget http://zlib.net/zlib-1.2.8.tar.gz

tar -zxvf zlib-1.2.8.tar.gz

3、下载openssl 提供ssl

cd /usr/local/src

wget http://www.openssl.org/source/openssl-1.0.1t.tar.gz

tar -zxvf openssl-1.0.1t.tar.gz

二、安装nginx

到http://nginx.org/en/download.html下载最新稳定版 

cd /usr/local/src

wget http://nginx.org/download/nginx-1.10.0.tar.gz

tar -zxvf nginx-1.10.0.tar.gz

mv nginx-1.10.0 ../nginx

cd ../nginx

./configure --prefix=/usr/local/nginx --conf-path=/usr/local/nginx/nginx.conf --pid-path=/usr/local/nginx/nginx.pid --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.38 --with-zlib=/usr/local/src/zlib-1.2.8 --with-openssl=/usr/local/src/openssl-1.0.1t

make

make install

./sbin/nginx -t  

看到下面的信息说明安装成功。

180739_SUv5_2353992.png

至此nginx 安装完毕。

三、配置虚拟主机

vim nginx.conf

182609_Ih4I_2353992.png

修改本地host文件

182709_RMl5_2353992.png

启动nginx ./sbin/nginx

打开浏览器 输入 www.lzq.org 

182835_F22n_2353992.png

至此虚拟主机配置成功!

nginx的 configure命令支持以下参数:

  • --prefix=path    定义一个目录,存放服务器上的文件 ,也就是nginx的安装目录。默认使用 /usr/local/nginx。
  • --sbin-path=path 设置nginx的可执行文件的路径,默认为  prefix/sbin/nginx.
  • --conf-path=path  设置在nginx.conf配置文件的路径。nginx允许使用不同的配置文件启动,通过命令行中的-c选项。默认为prefix/conf/nginx.conf.
  • --pid-path=path  设置nginx.pid文件,将存储的主进程的进程号。安装完成后,可以随时改变的文件名 , 在nginx.conf配置文件中使用 PID指令。默认情况下,文件名 为prefix/logs/nginx.pid.
  • --error-log-path=path 设置主错误,警告,和诊断文件的名称。安装完成后,可以随时改变的文件名 ,在nginx.conf配置文件中 使用 的error_log指令。默认情况下,文件名 为prefix/logs/error.log.
  • --http-log-path=path  设置主请求的HTTP服务器的日志文件的名称。安装完成后,可以随时改变的文件名 ,在nginx.conf配置文件中 使用 的access_log指令。默认情况下,文件名 为prefix/logs/access.log.
  • --user=name  设置nginx工作进程的用户。安装完成后,可以随时更改的名称在nginx.conf配置文件中 使用的 user指令。默认的用户名是nobody。
  • --group=name  设置nginx工作进程的用户组。安装完成后,可以随时更改的名称在nginx.conf配置文件中 使用的 user指令。默认的为非特权用户。
  • --with-select_module --without-select_module 启用或禁用构建一个模块来允许服务器使用select()方法。该模块将自动建立,如果平台不支持的kqueue,epoll,rtsig或/dev/poll。
  • --with-poll_module --without-poll_module 启用或禁用构建一个模块来允许服务器使用poll()方法。该模块将自动建立,如果平台不支持的kqueue,epoll,rtsig或/dev/poll。
  • --without-http_gzip_module — 不编译压缩的HTTP服务器的响应模块。编译并运行此模块需要zlib库。
  • --without-http_rewrite_module  不编译重写模块。编译并运行此模块需要PCRE库支持。
  • --without-http_proxy_module — 不编译http_proxy模块。
  • --with-http_ssl_module — 使用https协议模块。默认情况下,该模块没有被构建。建立并运行此模块的OpenSSL库是必需的。
  • --with-pcre=path — 设置PCRE库的源码路径。 PCRE库的源码(版本4.4 - 8.30)需要从PCRE网站下载并解压。其余的工作是Nginx的./ configure和make来完成。正则表达式使用在location指令和 ngx_http_rewrite_module 模块中。
  • --with-pcre-jit —编译PCRE包含“just-in-time compilation”(1.1.12中, pcre_jit指令)。
  • --with-zlib=path —设置的zlib库的源码路径。要下载从 zlib(版本1.1.3 - 1.2.5)的并解压。其余的工作是Nginx的./ configure和make完成。ngx_http_gzip_module模块需要使用zlib 。
  • --with-cc-opt=parameters — 设置额外的参数将被添加到CFLAGS变量。例如,当你在FreeBSD上使用PCRE库时需要使用:--with-cc-opt="-I /usr/local/include。.如需要需要增加 select()支持的文件数量:--with-cc-opt="-D FD_SETSIZE=2048".
  • --with-ld-opt=parameters —设置附加的参数,将用于在链接期间。例如,当在FreeBSD下使用该系统的PCRE库,应指定:--with-ld-opt="-L /usr/local/lib".

转载于:https://my.oschina.net/u/2353992/blog/678739

相关文章:

  • PHP之路——MySql基础操作语句
  • windows下读取Linux分区软件
  • Angular.js Services
  • 折腾Openoffice---解决中文和注册问题(原创)
  • react 入门到放弃 之 webpack
  • 如何用Beyond Compare对比压缩文件
  • iOS推送通知的实现步骤
  • 异步与并行~大话目录
  • MySQL in不走索引
  • linu系统管理中和shell编程中常用的技巧
  • 云栖社区
  • linux下升级python版本
  • CentOS 7 网络配置
  • Report Server Windows Service (MSSQLSERVER) 无法与报表服务器数据库建立连接 错误ID107...
  • 滴滴算法大赛算法解决过程 - 机器学习
  • [ 一起学React系列 -- 8 ] React中的文件上传
  • 2017-09-12 前端日报
  • axios请求、和返回数据拦截,统一请求报错提示_012
  • canvas绘制圆角头像
  • CODING 缺陷管理功能正式开始公测
  • CSS3 变换
  • CSS实用技巧
  • CSS选择器——伪元素选择器之处理父元素高度及外边距溢出
  • ES学习笔记(12)--Symbol
  • Github访问慢解决办法
  • GraphQL学习过程应该是这样的
  • iOS | NSProxy
  • Java 23种设计模式 之单例模式 7种实现方式
  • JavaScript DOM 10 - 滚动
  • JAVA并发编程--1.基础概念
  • Next.js之基础概念(二)
  • PHP 使用 Swoole - TaskWorker 实现异步操作 Mysql
  • react 代码优化(一) ——事件处理
  • Theano - 导数
  • vuex 学习笔记 01
  • Vue--数据传输
  • 闭包--闭包之tab栏切换(四)
  • 第2章 网络文档
  • 分享几个不错的工具
  • 给自己的博客网站加上酷炫的初音未来音乐游戏?
  • 猴子数据域名防封接口降低小说被封的风险
  • 开放才能进步!Angular和Wijmo一起走过的日子
  • 前端工程化(Gulp、Webpack)-webpack
  • 删除表内多余的重复数据
  • 仓管云——企业云erp功能有哪些?
  • 机器人开始自主学习,是人类福祉,还是定时炸弹? ...
  • 京东物流联手山西图灵打造智能供应链,让阅读更有趣 ...
  • #pragma pack(1)
  • (003)SlickEdit Unity的补全
  • (11)MSP430F5529 定时器B
  • (11)工业界推荐系统-小红书推荐场景及内部实践【粗排三塔模型】
  • (3)选择元素——(17)练习(Exercises)
  • (30)数组元素和与数字和的绝对差
  • (cos^2 X)的定积分,求积分 ∫sin^2(x) dx
  • (done) NLP “bag-of-words“ 方法 (带有二元分类和多元分类两个例子)词袋模型、BoW