【网络】安装Nginx笔记
前言
up安装nginx主要是为了在服务器上做反向代理。有兴趣的同学可以参考下。
注意:
- 当前笔记基于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访问:

参考
- Ubuntu编译安装带ipv6模块的nginx并配置ssl证书:https://blog.csdn.net/diqiudq/article/details/122974700
- 配置参考:菜鸟。
【网络】安装Nginx笔记的更多相关文章
- CentOS 6.4 快速安装Nginx笔记
CentOS 6.4 快速安装Nginx笔记 本系列文章由ex_net(张建波)编写,转载请注明出处. http://blog.csdn.net/ex_net/article/details/9860 ...
- centos 安装nginx笔记
添加nginx 存储库 yum install epel-release 安装 yum install nginx 启动 systemctl start nginx
- Linux系统运维笔记(四),CentOS 6.4安装Nginx
Linux系统运维笔记(四),CentOS 6.4安装Nginx 1,安装编译工具及库文件 yum -y install make zlib zlib-devel gcc-c++ libtool op ...
- 学习笔记(1)centos7 下安装nginx
学习笔记(1)centos7 下安装nginx 这里我是通过来自nginx.org的nginx软件包进行安装的. 1.首先为centos设置添加nginx的yum存储库 1.通过vi命令创建一个rep ...
- Nginx 笔记(一)nginx简介与安装
个人博客网:https://wushaopei.github.io/ (你想要这里多有) Nginx 简介: 1.介绍 nginx 的应用场景和具体可以做什么事情 2.介绍什么是反向代理 3.介 ...
- 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 查看硬 ...
- 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 显示系统版 ...
- 网络安装archlinux(2012.8.20)笔记
周末闲极无聊,把烂笔记本翻出来想装个Archlinux,发现USB不能启动,光驱也挂了,只好网络安装. 我先后试了两种安装方式,一种纯互联网启动,安装,一种局域网启动,再互联网安装.分别说说. 不管哪 ...
- nginx笔记----安装
nginx的安装 ./configure make && make install (一)准备条件: 1.GCC---gun编译器集合 Nginx是一个由C语言编写的程序,因此首先需要 ...
随机推荐
- 【mido】python的midi处理库
安装mido库:pip install mido pipy地址:https://pypi.org/project/mido/ mido官方文档:https://mido.readthedocs.io/ ...
- python(第四版阅读心得)(系统工具)(一)
本章将会讲解python常用系统工具的介绍 python中大多数系统级接口都集中在两个模块: sys 和 os 但仍有部分其他标准模块也属于这个领域 如: 常见: glob 用于文件名扩展 soc ...
- KingbaseES R3 集群删除test库导致主备无法切换问题
案例说明: 在KingbaseES R3集群中,kingbasecluster进程会通过test库访问,连接后台数据库服务测试:如果删除test数据库,导致后台数据库服务访问失败,在集群主备切换时,无 ...
- Golang 随机淘汰算法缓存实现
缓存如果写满, 它必须淘汰旧值以容纳新值, 最近最少使用淘汰算法 (LRU) 是一个不错的选择, 因为你如果最近使用过某些值, 这些值更可能被保留. 你如果构造一个比缓存限制还长的循环, 当循环最后的 ...
- SpringBoot整合JWT实现登录认证
什么是JWT Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该token被设计为紧凑且安全的,特别适用于分布式站点 ...
- 面试突击83:什么情况会导致@Transactional事务失效?
一个程序中不可能没有事务,而 Spring 中,事务的实现方式分为两种:编程式事务和声明式事务,又因为编程式事务实现相对麻烦,而声明式事务实现极其简单,所以在日常项目中,我们都会使用声明式事务 @Tr ...
- Windows 2019通过网页修改域用户密码
对于域用户来说,定期修改密码是必须的.对于没有Exchange的组织,而且经常出差在外的人员,能及时修改密码就变得很重要了. 在Windows 2003的时候有iisadmpwd可以修改.但是这个页面 ...
- Java SE Object类
1.Object类 equals 方法 == 和 equals 的对比 == 是一个比较运算符 == 既可以判断基本类型,又可以判断引用类型 == 如果判断的是基本类型,判断的是值是否相等 == 如果 ...
- Nginx缓存了DNS解析造成后端不通--代理
文章转载自:https://segmentfault.com/a/1190000022365954 1 问题现象 我们使用 Nginx 的时候,经常会用到 Proxy 功能,为了方便管理,后端站点或者 ...
- 论文解读(FedGAT)《Federated Graph Attention Network for Rumor Detection》
论文信息 论文标题:Federated Graph Attention Network for Rumor Detection论文作者:Huidong Wang, Chuanzheng Bai, Ji ...