nginx笔记 安装nginx 配置 反向代理 多虚拟主机
1,检测linux上是否 通过yum安装了nginx
rpm -qi nginx
2.安装nginx之前的依赖包
yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel openssl openssl-devel -y
3.源代码编译安装tenginx
1.下载淘宝nginx的源代码包
wget http://tengine.taobao.org/download/tengine-2.3.0.tar.gz
2.解压缩源代码
tar -zxvf tengine-2.3.0.tar.gz
3.切换进入nginx源代码目录 进行编译安装
cd tengine-2.3.0
4.释放编译文件,指定安装路径
./configure --prefix=/opt/s18tngx/
5.开始编译且安装
make && make install
6.卸载之前通过yum安装的nginx
yum remove nginx -y
7. 查看nginx的安装目录,有哪些东西
[root@wangdachui s18tngx]# ls
conf 存放nginx的配置文件目录的
html 存放前端文件的地儿
logs 存放nginx日志文件的目录
sbin 存放nginx的可执行命令
8.配置nginx的环境变量,支持快捷启动
9.启动nginx
直接输入nginx命令
10.修改nginx的首页文件
存放在nginx安装目录下的html文件夹中,名为index.html的文件
vim index.html
写入你想要的数据
nginx的配置文件学习
nginx.conf如下
[root@wangdachui conf]# grep -v "^#" nginx.conf|grep -v "^$"
worker_processes 1; #全局变量,工作进程数
events {
epoll;
worker_connections 65536; #根据linux的文件描述符来修改
}
#http代表nginx核心功能块
http {
include mime.types;
default_type application/octet-stream;
gzip on; #开启压缩图片功能
#代表nginx的虚拟主机功能
#当我们访问192.168.226.128:80/就进入这个虚拟主机的配置
#第一个虚拟主机,。dnf网址
server {
#nginx监听的端口
listen 80;
#填写服务器的域名,没有域名就写ip地址即可
server_name 192.168.226.128;
#路径资源匹配 ,匹配 / 目录
#192.168.226.128:80/
#这是最低级匹配,所有的请求,都会进入这个location
location / {
#root参数指的是定义一个虚拟主机根目录
root html;
#index参数指定首页文件的名字
index index.html index.htm;
}
#第二个虚拟主机 韩剧网址
server {
listen 80;
server_name 192.168.226.128;
location / {
root /opt/s18hanju/;
index index.html;
}
}
}
2.nginx功能学习
修改windows的hosts文件,顶一个假的域名
写入测试域名,如下
192.168.226.128 www.s18dnf.com
即可通过域名访问网址
3.配置nginx多虚拟主机实战,其实就是修改nginx.conf,写入多个server标签,支持多个虚拟主机
server {
listen 80;
server_name www.s18dnf.com;
location / {
root /opt/s18dnf/;
index index.html index.htm;
}
#第二个虚拟主机 韩剧网址
server {
listen 80;
server_name www.s18hanju.com;
location / {
root /opt/s18hanju/;
index index.html;
}
}
nginx多虚拟主机有俩概念
1.如果没有域名,写ip地址的话,虚拟主机是自上而下的加载顺序 ,
2.如果有域名,nginx会基于域名区分虚拟主机
4.改完配置 ,重新加载nginx,平滑重启
nginx -s reload
5.学习nginx的状态模块功能
1.修改nginx.conf的配置文件
找到一个server虚拟主机,写入如下配置
location /status {
stub_status on;
}
2.重启nginx,加载这个status状态模块功能
3.通过ab压测命令,去给网站发起n多个请求
安装ab压测命令工具
yum -y install httpd-tools
4.给服务器nginx,发起一万个请求
ab -kc 1000 -n 10000 http://192.168.226.128/
6.nginx的access.log访问日志功能
编辑nginx.conf打开如下配置参数
打开如下注释
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log logs/access.log main;
access_log "pipe:rollback logs/access_log interval=1d baknum=7 maxsize=2G" main;
重启nginx查看logs下的日志文件,检测用户请求信息
tail -f logs/access.log
7.nginx的404页面
修改nginx.conf的404错误页面优化
找到如下配置
#当错误状态码是 40x系列就返回,nginx目录下的40x.html
error_page 404 403 402 400 401 /40x.html;
重启nginx 查看404页面
8.nginx限制ip访问功能
找到nginx.conf修改如下代码
location / {
#禁止192.168.226.0/24 这个地址段所有的ip访问
deny 192.168.226.1 ;
root /opt/s18dnf;
index index.html index.htm;
}
9.nginx反向代理功能
生活中见过什么代理?
1.租房的中介
2.卖票的黄牛
10.实现nginx的反向代理功能
环境准备
准备2台机器
一个是真实资源文件 192.168.226.128 就理解为房东 ,提供dnf的资源界面
一个是反向代理服务器 192.168.226.129 理解为中介,当我们访问中介,就访问到dnf的网站资源
1.分别在2台机器,安装nginx
2.资源服务器已经配置好,返回dnf页面
3.反向代理服务器配置如下
vim编辑nginx.conf 找到第一个server虚拟主机
修改配置如下
location / {
proxy_pass http://192.168.226.128;
}
4.重启nginx,查看反向代理效果
1.完成nginx的多虚拟主机,提供一个 dnf页面,和韩剧页面
2.提供nginx的访问日志功能
3.提供nginx的404错误页面优化
4.完成反向代理
nginx笔记 安装nginx 配置 反向代理 多虚拟主机的更多相关文章
- CentOS7 Nginx安装及配置反向代理
背景: Mono (Mono JIT compiler version 5.4.0.201 ) jexus-5.8.2-x64(<CentOS7 安装 jexus-5.8.2-x64>) ...
- Centos 7 上使用nginx为Node.js配置反向代理时错误:(13: Permission denied) while connecting to upstream
错误来源:Centos 7 上使用nginx为Node.js配置反向代理时产生(13: Permission denied) while connecting to upstream的错误 nginx ...
- Nginx反向代理多虚拟主机代理
根据http://www.cnblogs.com/zzzhfo/p/6032095.html这个环境配置 在web01和web02上配置基于域名的虚拟主机 web01 [root@web01 /]# ...
- Nginx安装及配置反向代理
本片博客记录在ubuntu16下安装nginx,以及如何实现负载均衡 安装nginx 如果是新机器,安装相关依赖环境 sudo apt install build-essential sudo apt ...
- nginx在windows下配置反向代理
转自:https://blog.csdn.net/comeonyangzi/article/details/72466310 下载地址:http://nginx.org/download/ 下载后直接 ...
- CentOS 6.4下Squid代理服务器的安装与配置,反向代理
CentOS 6.4下Squid代理服务器的安装与配置 一.简介 代理服务器英文全称是Proxy Server,其功能就是代理网络用户去取得网络信息. Squid是一个缓存Internet 数据的软件 ...
- lvs,nginx反向代理,虚拟主机
LVS NAT 拓扑 client | | LVS | | ------------------- | | | RS1 RS2 RS3 地址规划如下 机器名称 ip配置 ip配置 备注信息 LVS 1 ...
- 【Asp.net Core】在 Linux 子系统中安装 nginx 并配置反向代理
上一篇鸟文中,老周已经介绍过在 Ubuntu 子系统中安装 dotnet-sdk 的方法,本文老周给大伙伴们说说安装 nginx 服务,并配置反向代理.同样,老周假设你从来没有用过 Linux,所以老 ...
- Tomcat:利用Apache配置反向代理、负载均衡
本篇主要介绍apache配置反向代理,介绍了两种情况:第一种是,只使用apache配置反向代理:第二种是,apache与应用服务器(tomcat)结合,配置反向代理,同时了配置了负载均衡. 准备工作 ...
随机推荐
- 深入理解JVM虚拟机:(一)Java运行时数据区域
概述 JVM是Java语言的精髓所在,因为它Java语言实现了跨平台运行,以及自动内存管理机制等,本文将从概念上介绍JVM内存的各个区域,说明个区域的作用. JVM运行时数据区模型 Java虚拟机在执 ...
- 对 IIC 总线的理解、调用函数以及常见面试问题
一.IIC 总线概述: IIC 即Inter-Integrated Circuit(集成电路总线) I2C总线是PHLIPS公司推出的一种串行总线, I2C总线只有两根双向信号线.一根是数据线SDA, ...
- JVM类加载机制与反射-转
一.Java类加载机制 1.概述 Class文件由类装载器装载后,在JVM中将形成一份描述Class结构的元信息对象,通过该元信息对象可以获知Class的结构信息:如构造函数,属性和方法等,Java允 ...
- 关于python中pika模块的问题
工作中经常用到rabbitmq,而用的语言主要是python,所以也就经常会用到python中的pika模块,但是这个模块的使用,也给我带了很多问题,这里整理一下关于这个模块我在使用过程的改变历程已经 ...
- Vuex详解
一.什么是Vuex 官网解释如下: Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化.Vuex ...
- Dedecms判断当前栏目下是否有子栏目
使用dedecms建网站,有时为了某种功能的需要,需要通过代码判断当前栏目下是否有子栏目,如果有,显示一种样式,如果没有,显示另一种样式. dedecms判断当前栏目下是否有子栏目可使用以下的代码进行 ...
- nginx default_server的作用
用来处理没有成功匹配server_name的请求 https://www.oschina.net/question/12_3565 https://segmentfault.com/a/1190000 ...
- iOS 裁剪View指定的角裁剪
在开发中碰到view的左上角和右上角需要裁剪,具体实现方法如下: UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:se ...
- SQL Server清空日志以及查看日志大小语句
为了安全起见,使用的时候,先数据备份一遍 作者hongb:SQL Server:查看SQL日志文件大小命令:dbcc sqlperf(logspace) https://www.cnblogs.com ...
- 【问题】Can't load AMD 64-bit .dll on a IA 32-bit platform
文件下载地址:http://archive.apache.org/dist/tomcat/tomcat-connectors/native/1.2.14/binaries/ 按自己的提示找到32位或者 ...