前言

up安装nginx主要是为了在服务器上做反向代理。有兴趣的同学可以参考下。

注意:

  1. 当前笔记基于ubuntu,可直接复制命令。

安装前先更新下

sudo apt-get update

安装依赖库

#安装openssl库
sudo apt-get install openssl libssl-dev
#安装pcre
sudo apt-get install libpcre3 libpcre3-dev
#安装zlib
sudo apt-get install zlib1g-dev
#安装编译包
sudo apt-get install build-essential

下载Nginx

nginx官网:http://nginx.org/

今具体版本可以去这里选:http://nginx.org/download

#在对应目录下载nginx
wget http://nginx.org/download/nginx-1.23.2.tar.gz
#解压
tar -zxvf nginx-1.23.2.tar.gz
#进入目录
cd nginx-1.23.2

ngin文件夹内容如下:

lzm@VM-12-11-ubuntu:~/work/blog_server/nginx-1.23.2$ ls
auto CHANGES CHANGES.ru conf configure contrib html LICENSE man README sr

Nginx编译配置

在安装配置前,先确认下当前配置:./configure --help

如果通过修改参数来修改配置:

如:

  • 安装路径:--prefix=/usr/local/nginx
  • 添加一个模块功能:--with-xxx_mmodule

我这里就简单添加下http的模块即可:

sudo ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --without-http-cache --with-http_ssl_module --with-http_gzip_static_module

配置成功会显示1如下:

编译&安装&验证nginx

编译:

sudo make

安装:

sudo make install

验证:

# 切换到nginx安装路径
cd /usr/local/nginx
#启动nginx
sudo ./sbin/nginx
# 查看当前在跑的nginx版本&配置
sudo ./sbin/nginx -V

如下表示启动成功:

在浏览器输入安装了nginx的主机IP,出现如下图即表示nginx正常运行:

Nginx服务配置

配置文件再Nginx安装目录下的./conf/nginx.conf,我们修改该文件根据自己的服务进行配置即可。

配置理解可以参考:菜鸟

  • 全局块 :配置影响nginx全局的指令。一般有运行nginx服务器的用户组,nginx进程pid存放路径,日志存放路径,配置文件引入,允许生成worker process数等。
  • events块 :配置影响nginx服务器或与用户的网络连接。有每个进程的最大连接数,选取哪种事件驱动模型处理连接请求,是否允许同时接受多个网路连接,开启多个网络连接序列化等。
  • http块 :可以嵌套多个server,配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置。如文件引入,mime-type定义,日志自定义,是否使用sendfile传输文件,连接超时时间,单连接请求数等。
  • server块 :配置虚拟主机的相关参数,一个http中可以有多个server。
  • location块 :配置请求的路由,以及各种页面的处理情况。

配置SSL

这个按需选择。

先拿到证书,如果想公网访问,可去域名处申请免费的SSL证书,如:腾讯云

申请成功后以nginx下载:

把证书放到指定目录:主要是两个文件:证书链.pem和私钥.key

cd /usr/local/nginx
sudo mkdir ./conf/cert
# 根据自己证书的位置操作
cp /home/lzm/cert/xxx.* ./ccert

修改nginx配置:

sudo vim

开放&配置https代码:

    #HTTPS server
server {
listen 443 ssl;
#监听的地址
server_name localhost; #改为你的证书
ssl_certificate ./cert/cert.pem;
#改为你的私钥
ssl_certificate_key ./cert/cert.key;
# session cache功能
ssl_session_cache shared:SSL:1m;
# 会话重用时限
ssl_session_timeout 5m;
# 支持的加密套件
ssl_ciphers HIGH:!aNULL:!MD5;
# 是否由服务器指定加密套件
ssl_prefer_server_ciphers off; location / {
root html;
index index.html index.htm;
}
}

重启nginx:

cd /usr/local/nginx/sbin/
sudo ./nginx -s reload

使用https访问:

参考

【网络】安装Nginx笔记的更多相关文章

  1. CentOS 6.4 快速安装Nginx笔记

    CentOS 6.4 快速安装Nginx笔记 本系列文章由ex_net(张建波)编写,转载请注明出处. http://blog.csdn.net/ex_net/article/details/9860 ...

  2. centos 安装nginx笔记

    添加nginx 存储库 yum install epel-release 安装 yum install nginx 启动 systemctl start nginx

  3. Linux系统运维笔记(四),CentOS 6.4安装Nginx

    Linux系统运维笔记(四),CentOS 6.4安装Nginx 1,安装编译工具及库文件 yum -y install make zlib zlib-devel gcc-c++ libtool op ...

  4. 学习笔记(1)centos7 下安装nginx

    学习笔记(1)centos7 下安装nginx 这里我是通过来自nginx.org的nginx软件包进行安装的. 1.首先为centos设置添加nginx的yum存储库 1.通过vi命令创建一个rep ...

  5. Nginx 笔记(一)nginx简介与安装

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) Nginx 简介: 1.介绍 nginx 的应用场景和具体可以做什么事情 2.介绍什么是反向代理 3.介 ...

  6. Centos7 编译安装 Nginx PHP Mariadb Memcached 扩展 ZendOpcache扩展 (实测 笔记 Centos 7.3 + Mariadb 10.1.20 + Nginx 1.10.2 + PHP 7.1.0 + Laravel 5.3 )

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7-x86_64-Minimal-1611.iso 安装步骤: 1.准备 1.0 查看硬 ...

  7. CentOS7 编译安装 Nginx (实测 笔记 Centos 7.0 + nginx 1.6.2)

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7.0-1406-x86_64-DVD.iso 安装步骤: 1.准备 1.1 显示系统版 ...

  8. 网络安装archlinux(2012.8.20)笔记

    周末闲极无聊,把烂笔记本翻出来想装个Archlinux,发现USB不能启动,光驱也挂了,只好网络安装. 我先后试了两种安装方式,一种纯互联网启动,安装,一种局域网启动,再互联网安装.分别说说. 不管哪 ...

  9. nginx笔记----安装

    nginx的安装 ./configure make && make install (一)准备条件: 1.GCC---gun编译器集合 Nginx是一个由C语言编写的程序,因此首先需要 ...

随机推荐

  1. K8S name_namespace

    Name 由于K8S内部,使用"资源"来定义每一种逻辑概念(功能),故没种"资源",都应该有自己的"名称" "资源"有 ...

  2. 如何结合整洁架构和MVP模式提升前端开发体验(三) - 项目工程化配置、规范篇

    工程化配置 还是开发体验的问题,跟开发体验有关的项目配置无非就是使用 eslint.prettier.stylelint 统一代码风格. formatting and lint eslint.pret ...

  3. QT学习(四)----360界面制作(1)

    参照网上的资料,模仿了一份360新特效的界面. 源代码在:http://download.csdn.net/detail/zhangyang1990828/5238013 360真实效果:(最好自己打 ...

  4. 在Ubuntu上安装Odoo时遇到的问题

    这两天开始看<Odoo快速入门与实践  Python开发ERP指南>(刘金亮 2019年5月第1版 机械工业出版社).试着在Ubuntu上安装Odoo,遇到很多问题,通过在网上查找,都已解 ...

  5. 前端必读3.0:如何在 Angular 中使用SpreadJS实现导入和导出 Excel 文件

    在之前的文章中,我们为大家分别详细介绍了在JavaScript.React中使用SpreadJS导入和导出Excel文件的方法,作为带给广大前端开发者的"三部曲",本文我们将为大家 ...

  6. kibana访问多个 Elasticsearch 节点间的负载均衡

    如果 Elasticsearch 集群有多个节点,分发 Kibana 节点之间请求的最简单的方法就是在 Kibana 机器上运行一个 Elasticsearch 协调(Coordinating onl ...

  7. linux系统排查数据包常用命令

    1.查看当前系统中生效的所有参数 sysctl -a 2.统计处于TIME_WAIT状态的TCP连接数 netstat -ant|grep TIME_WAIT|wc -l 3.统计TCP连接数 net ...

  8. MES系统与ERP系统信息集成有哪些原则?

    首先,MES和ERP应该是两个独立的系统,简单的说,ERP与MES有点像公司总部与分厂的关系,ERP向MES发指令,MES向ERP做汇报,所以可以按照这个思维来考虑或类比来处理.从企业的管理来说,ER ...

  9. Linux命令全解

    strace 获取某个可执行文件执行过程中用到的所有系统调用 :strace -f g++ main.cpp &| vim 查看g++编译过程调用了哪些系统调用,通过管道符用vim接收 :%! ...

  10. SpringBoot入门项目CRM学习过程中的报错记录(更新ing)

    在用mybatis自动生成实体类和mapper时报错..... is unrecognized or represents more than one time zone. You must conf ...