4.28Linux(6)
2019-4-28 21:27:41
明天回家.回家继续学Linux还好有个服务器!!!感觉有个属于自己的服务器感觉好爽啊!!
越努力越幸运!永远不要高估自己!!!
Nginx安装

服务器的请求原理

Nginx配置

Nginx多虚拟机

笔记
day108Linux笔记 web服务器软件
IIS (windows底下的web服务器软件) Nginx (Linux底下新一代高性能的web服务器)
Tengine www.taobao.com 这是淘宝 Apache (Linnux上个时代的,老企业会选择apache)
http://www.gov.cn/ Linux发起网络请求命令 curl 公司的网站技术架构 LAMP的一个技术栈
linux apache mysql php #搭建一个黄金组合,lamp 闭源技术架构
redhat + apache + oracle + java + nagios(监控服务器软件) + SVN(代码托管平台)
走向开源
centos + nginx + mysql + python + saltstack(运维软件,可以在一台机器上,管理多个机器)+ zabbix(监控软件) + git() 不同的python框架支持的QPS吞吐量是多少呢? 通过ab这个命令,压测软件来测试一个不同(启动10个并发请求,发起10000个连接),运行django,运行flask、运行tornado flask 600 req/s
django 1000..
tornado(异步非阻塞) 2000...
sanic (python3.7之后的一个异步框架。uvloop出) ,3000... golang
net/http 6W (很多互联网公司,知乎(py2 > golang),滴滴都在python > golang ) 编译安装nginx:
1.解决依赖关系
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
2.下载源码包
wget -c https://nginx.org/download/nginx-1.12.0.tar.gz
3.解压缩源码包
tar -zxvf nginx-1.12.0.tar.gz
4.在当前路径下通过configure这个脚本文件执行,释放makefile,然后指定安装nginx的路径,以及开启模块功能ssl与状态模块功能
./configure --prefix=/opt/nginx1-12/ --with-http_ssl_module --with-http_stub_status_module
5.编译且编译安装
make && make install
6.在/opt/nginx1-12/ 安装好nginx的目录,找到一个sbin的文件夹,找到nginx的启动命令,然后启动nginx服务
1.检查nginx安装后的目录,ll /opt/nginx1-12
drwxr-xr-x 2 root root 333 12月 6 09:32 conf 配置文件存放的目录, nginx.conf这个文件就是nginx的主配置文件
drwxr-xr-x 2 root root 40 12月 6 09:32 html 存放网页根目录的文件夹,存放了index.html **.html **.gif **.jpg
drwxr-xr-x 2 root root 6 12月 6 09:32 logs 日志目录
drwxr-xr-x 2 root root 19 12月 6 09:32 sbin nginx启动脚本目录
2.nginx的可执行命令
- rwx(user) r-x(group) r-x(other) 1 root(属主) root(属组) 5656000 12月 6 09:32 sbin/nginx
7 5 5 ./sbin/nginx #直接启动nginx
./sbin/nginx -s stop
./sbin/nginx -s reload #平滑重启(修改了nginx配置文件,不重启服务就加载配置且生效)
../sbin/nginx -t 检测nginx.conf 配置文件的语法正确性 7.检查端口,进程,然后通过浏览器访问nginx页面,192.168.12.96:80 8.nginx的主配置文件,nginx.conf修改 #虚拟主机1
server {
listen 80;
server_name www.s14huoying.com; #这里是nginx通过这个参数,来定位不同的虚拟主机
#代表访问nginx的匹配路径
location / {
#指明网页根目录在/data/huoying/文件夹下
root /data/huoying/;
index index.html index.htm;
} #虚拟主机2
server {
listen 81;
server_name www.s14hanjutv.com; #这里是nginx通过这个参数,来定位不同的虚拟主机
#代表访问nginx的匹配路径
location / {
#指明网页根目录在/opt/html/文件夹下
root /data/hanju/;
index index.html index.htm;
} #一台服务器,安装了一个web服务软件 #假设我超弟想创业,准备2个网站,展示不同的片 #资源浪费,一个服务器至少也是50G的磁盘,浪费钱 一个服务器,安装一个web软件,展示一个页面 再主板一个服务器,再安装一个web软件,展示一个页面 卖片,火影忍者 www.s14huoying.com 展示不同的网站资料,mp4,图片,动态图,html静态资源,超链接 卖片,韩剧TV www.s14hanjutv.com 展示不同的网站资料,mp4,图片,动态图,html静态资源,超链接 nginx多虚拟主机,在一台机器上,安装一个nginx,运行多个虚拟主机,不同的虚拟主机,返回不同的页面 #多虚拟主机的配置
1.修改nginx底下的conf/nginx.conf ,修改信息如下
server {
listen 80;
server_name www.s14huoying.com;
location / {
#指明网页根目录在/opt/html/文件夹下
root /data/huoying;
index index.html index.htm;
}
}
server {
listen 80;
server_name www.s14hanju.com;
location / {
#指明网页根目录在/opt/html/文件夹下
root /data/hanju;
index index.html index.htm;
}
}
2.重新加载nginx配置文件
../sbin/nginx -t #检测语法
../sbin/nginx -s reload #平滑重启 3.准备不同的虚拟主机的站点资料
mkdir -p /data/{huoying,hanju}
放入不同的资料如下
├── hanju
│ ├── hanju.jpg
│ └── index.html
└── huoying
├── index.html
└── mingren.jpg 4.写入到本地dns解析文件,由于我是在windows中通过浏览器访问,应该在windows的hosts文件中添加记录
hosts文件就是一个本地dns(就是将域名转化成ip地址)强制解析的文件 windows的hosts文件就在这里:C:\Windows\System32\drivers\etc\hosts ,写入如下信息 192.168.12.96 www.s14huoying.com
192.168.12.96 www.s14hanju.com 5.在windows中,测试访问多域名配置 nginx状态模块功能:
1.在配置文件中,添加一个参数即可
location /status {
stub_status on;
} nginx访问日志功能:
1.在配置文件中,打开注释,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; 参数详解:
$remote_addr 记录客户端ip
$remote_user 远程用户,没有就是 “-”
$time_local 对应[14/Aug/2018:18:46:52 +0800]
$request 对应请求信息"GET /favicon.ico HTTP/1.1"
$status 状态码
$body_bytes_sent 571字节 请求体的大小
$http_referer 对应“-” 由于是直接输入浏览器就是 -
$http_user_agent 客户端身份信息
$http_x_forwarded_for 记录客户端的来源真实ip 97.64.34.118 打开了功能之后,可一通过access_log查看用户身份信息
192.168.12.60 - - [06/Dec/2018:11:24:04 +0800] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36" "-" nginx的错误页面优化:
1.在配置文件中添加 nginx.conf
server {
listen 80;
server_name www.s14huoying.com;
location / {
#指明网页根目录在/opt/html/文件夹下
root /data/huoying;
index index.html index.htm;
deny 192.168.12.120;
}
error_page 400 401 402 404 /40x.html;
#当请求来自于wwww.s14huoying.com/status/
}
4.28Linux(6)的更多相关文章
- 整理Linux查看系统日志的一些经常使用命令
整理Linux查看系统日志的一些经常使用命令 last -a 把从何处登入系统的主机名称或ip地址,显示在最后一行. -d 指定记录文件.指定记录文件.将IP地址转换成主机名称. -f <记录文 ...
- [整理]MongoDB 经常使用命令总结
MongoDB 经常使用命令总结 简单的的增删改查数据 在查询结果中指定显示或者不显示某个字段 比如,我们希望在 lessons 集合中查找全部数据,可是不希望在返回结果中包括 slides 字段:由 ...
- golang urlencode
u := url.Values{} u.Set(") u.Set(") u.Set(,"mac":"38:a4:ed:fe:99:c8"}` ...
- keras在win下的安装,使用等
http://cache.baiducontent.com/c?m=9d78d513d99a16ef4fece42d4c01d6160e2482744cd7c7637ac3e34a84652b5637 ...
- MongoDB改动、删除文档的域属性实例
MongoDB改动.删除文档的域属性实例 在站点的开发中,可能最初的设计不合理.或者后期业务的变更,会造成文档结构会有些无用的属性.须要去删除或改动.因为MongoDB 是无 Schema 的,不像关 ...
- DELPHI7 ADO二层升三层新增LINUX服务器方案
DELPHI7 ADO二层升三层新增LINUX服务器方案 引子:笔者曾经无数次在用户的LINUX服务器上创建一个WINDOWS虚拟机,用于运行自己DELPHI开发中间件. 现在再不需要如此麻烦了. 咏 ...
随机推荐
- Web项目容器集成ActiveMQ & SpringBoot整合ActiveMQ
集成tomcat就是随项目启动而启动tomcat,最简单的方法就是监听器监听容器创建之后以Broker的方式启动ActiveMQ. 1.web项目中Broker启动的方式进行集成 在这里采用Liste ...
- NBIoT三种部署方式【转】
转自:https://472880.kuaizhan.com/89/34/p441944286fccf2 本文作者:吴老司撩通信 本文来源:EETOP NB-IoT支持在频段内(In-Band).保护 ...
- Sql server2012转sql server2008步骤经验总结(转)
wIndows用户登入选择“数据库”右键选择“附加”点击“添加” 打开数据库,右键选中 选择“任务”→“生成脚本”→“选择对象”→“编写整个数据及所有数据库对象的脚本” →“下一步” “设置脚本编写选 ...
- ABP core学习之一 使用Mysql数据库
修改项目EntityFrameworkCore的相关内容 1.添加类库 使用nuget包管理器,添加Pomelo.EntityFrameworkCore.MySql 2.TradeErpDbConte ...
- OPPO A3在哪里打开usb调试模式的详细教程
当我们使用电脑通过数据线连接上安卓手机的时候,如果手机没有开启Usb开发者调试模式,电脑则无办法成功读到我们的手机,这时我们需要找方法将手机的Usb开发者调试模式打开,这里我们叙述OPPO A3如何开 ...
- 提取Jar2Exe源代码,JavaAgent监控法
最近遇见一个麻烦,明明知道是java写的小软件,但是打包成了exe,木得办法,之前打包的都有缓存能在TEMP文件夹找到.这次可不一样了,特此记录一下. 为此特地搜集了一些java打包成exe的软件. ...
- UOJ#103. 【APIO2014】Palindromes PAM模板题
原文链接www.cnblogs.com/zhouzhendong/p/UOJ103.html 前言 我终于会PAM啦 感谢CLY大佬手把手教我PAM 题解 建个 PAM. 统计一下每一个节点的 Rig ...
- 在VUE-CLI 3下的第一个Element-ui项目(菜鸟专用)
vue-cli3.0使用及配置 (https://www.cnblogs.com/xzqyun/p/10779891.html ) 以上是 vue-cli3.0使用及配置 这里我们来引用基于v ...
- Mysql学习笔记03
Mysql 的视图 1 view 在查询中,我们经常把查询结果当成临时表来看, view 是什么? View 可以看成一张虚拟的表,是表通过某种运算得到的有一个投影. 2 如何创建视图? 创建视图 ...
- mongo删除指定字段,可多个字段同时删除
参考代码: db.getCollection('Person').update({"email":{$exists:true}},{$unset:{"email" ...