网站建设中长出现的问题,上海优化seo,创业项目,网站生成手机端我们先补充点关于awk的内容 awk的用法其实很广。 $0 表示整条记录 变量#xff1a; NF 一行中有多少个字段#xff08;表示字段数#xff09; NR #xff1a; 代表当前记录的序号#xff0c;从1开始计数。每读取一条记录#xff0c;NR的值就会自动增加1。#xff08;…我们先补充点关于awk的内容 awk的用法其实很广。 $0 表示整条记录 变量 NF 一行中有多少个字段表示字段数 NR 代表当前记录的序号从1开始计数。每读取一条记录NR的值就会自动增加1。一行就是一条记录 FS代表输入字段分隔符Field Separator用于指定输入数据的字段之间的分隔符。默认情况下FS的值是空白字符包括空格和制表符。可以通过设置FS变量来改变字段分隔符例如FS|表示使用竖线作为分隔符。 RS代表记录分隔符Record Separator用于指定输入数据时记录之间的分隔符。默认情况下RS的值是换行符 。 OFS代表输出字段分隔符Output Field Separator用于指定输出数据时字段之间的分隔符。默认情况下OFS的值是空格。 ORS代表输出记录分隔符Output Record Separator用于指定输出数据时记录之间的分隔符。默认情况下ORS的值是换行符 。 $1~/正则表达式/ 第一段 [ ] 里面中的任意一个 awk 模块 BEGIN END BEGIN 在读取文件之前定义动作定义变量 END在读取文件且处理完成之后输出一个结束 案例 awk {addr[$1]1}END{for(var in addr) print 地址,var,次数是,addr[var]} log1 //统计IP登录了几次 /var/log/httpd awk -F (from )|( port) /from.*port/{addr[$2]1}END{for(var in addr) print 地址,var,次.是,addr[var]} slog 统计IP登录了几次 secure awk -F [: ] $516$523{addr[$1]1}END{for(var in addr) print 地址,var,出现次数,addr[var]} log1 //统计规定时间段内登陆了几次 案例服务器巡检 #!/bin/bash check_mem() { left_memfree -m |awk -F [ ] NR2{print $NF} total_memfree -m | awk -F [ ] NR2{print $2} percent_leftecho scale2; $left_mem/$total_mem*100 | bc echo $percent_left% } check_mem check_disk() { avail_diskdf -h | awk -F [ ] /centos-root/{print $4} percent_diskdf -h | awk -F [ ] /centos-root/{print $5} pos_diskdf -h | awk -F [ ] /centos-root/{print $6} echo 磁盘位置$pos_disk echo 可用空间大小$avail_disk echo 磁盘空闲率$percent_disk } check_disk check_cpu() { cpu_loadtop -n1 | awk -F load average: NR1{print $2} echo CPU负载是: $cpu_load } check_cpu 一、中间件 Web中间件是一类位于Web浏览器和Web服务器之间的软件它们用于处理Web应用程序中的请求和响应 1、web的功能和特色 1、请求处理web中间件负责接收来自用户的请求并根据请求的类型和内容将其转发到适当的服务器或应用程序进行处理 2、响应管理响应管理处理后的响应也会通过Web中间件返回给用户中间件在此过程中可能会对响应数据进行加工或优化以提高性能或增加安全性。 3、功能扩展Web中间件可以提供额外的功能如会话管理、安全验证、负载均衡、缓存等这些功能对于提升Web应用的性能和用户体验至关重要。 4、解耦作用它有助于将具体的业务逻辑与底层的技术细节分离使得开发人员可以专注于业务逻辑的实现而不必关心底层的网络通信、数据存储等细节。 5、系统集成中间件提供了一种机制使得不同来源、不同类型的应用程序可以相互通信和集成共享资源和服务。 6、分布式系统支持在分布式系统中中间件起到了关键的作用它帮助各个分布在不同地点的服务和应用协同工作实现数据的一致性和系统的高可用性。 7、常见的web中间件包括代理服务器、负载均衡器、缓存服务器等而像Tomcat、Weblogic、Jboss等也都属于Web中间件的范畴。apache/ngingx/iis 是windows专用 http协议超文本传输协议 作用让用户通过浏览器请求到服务器并接受客户端返回的数据最后在浏览器中显示出来 2、http请求报文格式 第一行请求行 请求方法GET POST PUT等 请求url 清秀协议版本号使用的http协议0.9、1.0、1.1 第二行请求头 HOST 主机头指定网站域名或IP Connectionclose 当前客户端的连接状态 User-Agent UA头客户端访问网站时候使用的浏览器类型 Referer :表示当前这个请求是直接访问还是从其他界面跳转来的 第三行空白行开始请求体 3、http响应报文格式 第一行响应行 响应http版本号 http状态码 状态码对应的消息短语 第二行响应头 第三行空白行开始下面响应体 4、http状态码 1xx 提示信息 2xx 表示客户端请求成功 200 201 3xx 客户端本次请求被重定向 301 永久重定向 302 临时重定向 304 表示访问到的页面来自浏览器的缓存 4xx客户端访问失败客户端原因 404 not found 页面不存在 403 forbidden 表示无权访问 或者是默认首页不存在 5xx客户端访问失败服务器端原因 在浏览器的开发者工具我们可以看到三种首部 请求头部 Request 响应头部 Response 通用首部 General http协协议的格式http://域名:端口号/路径/文件名 5、apache linux中内置apache 6、安装apache 第一步配置yum源 第二步安装apache yum install httpd 第三步启动apache systemctl start httpd systemctl enable httpd 第四步检查apache的状态 systemctl status httod 第五步访问apache apache的作用就是开启一个端口等待客户端通过浏览器访问 ip地址默认端口80 7、测试之前建议关闭防火墙和selinux #关闭防火墙 systemctl disable firewalld systemctl stop firewalld 排查故障 第一步检查网络是否通常【ping】 第二步检查服务是否开启【状态】 第三步测试是否可以访问服务的端口【telnet】 第四步用其他主机/ip测试是否可以访问 8、补充检查哪个进程占用了80端口 lsof -i :80 ss -tunlp | grep 80 9、相关文件 配置文件httpd.conf 日志文件access.log 访问日志 error.log 错误日志 如果是yum安装的apache 日志文件的位置/var/log/httpd 配置文件的位置/etc/httpd/conf 如果用编译安装的apache 日志文件的位置安装位置下/logs/ 配置文件的位置安装位置下/conf/ 10、 配置文件中几个关键字段 ServerName网站的域名 DocumentRoot指定网站的根目录 Listen:指定监听的端口号 DirectoryIndex默认首页 * 这些都可以修改注意别改错了修改完之后要重启httpd让配置生效 11、虚拟主机 虚拟机主机就是用一个apache发布多个网站 12、如何发布多个网站 第一步进入到/etc/httpd/conf.d 目录 第二步创建一个名为xxx.conf 的文件 vim vhost.conf 第三步写入文件内容 VirtualHost *:80 # 定义一个虚拟主机监听80端口 ServerAdmin 1374902537qq.com # 设置管理员邮箱 DocumentRoot /var/www/html/web1 # 设置网站根目录 ServerName www.web1.com # 设置服务器名称 DirectoryIndex index.html aaa.html # 设置默认访问的文件名 Directory /var/www/html/web1 # 设置目录配置 Options Indexes FollowSymLinks # 设置目录选项允许索引和跟随符号链接 AllowOverride None # 禁止覆盖配置文件 Require all granted # 允许所有用户访问 /directory /VirtualHost VirtualHost *:80 ServerAdmin 1374902537qq.com DocumentRoot /var/www/html/web2 ServerName www.web2.com DirectoryIndex index.html bbb.html Directory /var/www/html/web2 Options Indexes FollowSymLinks AllowOverride None Require all granted /directory /VirtualHost 第四步重启apache服务 systemctl restart httpd 如果出现报错的话很大可能就是你的配置文件没写对 像这样你可以根据他的提示来判断你那里的配置文件写错了 第五步切换目录到/var/www/html网站跟目录下 cd /va/www/html 第六步创建刚才的网站目录 mkdir web{1..2} 然后在web1中写入默认首页的内容 echo 111 index.html 在web2中写入默认首页的内容 echo 222 index.html 第七步找到你windows下的hosts文件 它在C:\Windows\System32\drivers\etc 在里面写入你linux的ip 域名 192.168.1.xxx www.web1.com 192.168.1.xxx www.web2.com 第八步用域名访问一下验证是否成功 注意当你配置了多个网站的话我们去访问apache的网站根目录的默认首页时它会显示我们配置的第一个网站的默认首页