2018.3.1312周2次课

author author     2022-10-24     327

关键词:

十二周二次课(3月13日)

12.6 Nginx安装

12.7 默认虚拟主机

12.8 Nginx用户认证

12.9 Nginx域名重定向

12.6 Nginx安装

  • 下载和解压:

cd /usr/local/src

wget http://nginx.org/download/nginx-1.13.9.tar.gz

tar -zxvf nginx-1.13.9.tar.gz

  • 配置编译选项

cd nginx-1.13.9

./configure --prefix=/usr/local/nginx

  • 编译和安装

make &&  make install

技术分享图片

技术分享图片

  • 创建配置文件和启动脚本

vim /etc/init.d/nginx

chmod 755 /etc/init.d/nginx

技术分享图片

chkconfig --add nginx

chkconfig nginx on

  • 更改配置文件

cd /usr/local/nginx/conf

mv nginx.conf nginx.conf.1 //不用系统自带的,我们自己建立以新的。也可以清空原来的配置文件,用命令:>/usr/local/nginx/conf/nginx.conf

vim nginx.conf

技术分享图片

  • 启动

service nginx start

技术分享图片

  • 测试

curl localhost

技术分享图片

能访问到时因为在配置文件 nginx.conf里默认主机页里,设置了如下的设置

技术分享图片

技术分享图片

技术分享图片

  • 测试php解析

我们在配置文件里也配置了解析php:

技术分享图片

vi /usr/local/nginx/html/1.php //加入如下内容

<?php

echo "This is nginx test page.";

?>

技术分享图片

技术分享图片

12.7 默认虚拟主机

在nginx中也又默认虚拟主机,跟httpd类似,第一个被nginx加载的虚拟主机就是默认主机。但和httpd不相同的地方时,它还有一个配置用来标记默认虚拟主机。也就是说,如果没有这个标记,第一个虚拟主机为默认虚拟主机。

修改主配置文件:vim /usr/local/nginx/conf/nginx.conf //注释掉server。在结束符号 上面增加一行:include vhost/*.conf; 。

这样/usr/local/nginx/conf/vhost/下面所有以.conf结尾的文件都会加载。我们就可以包所有虚拟主机配置文件放到vhost目录下面

技术分享图片

vhost目录在conf目录下,如果没有就创建一个,

技术分享图片

vim aaa.com.conf //编辑虚拟主机aaa.com配置文件

server

   listen 80 default_server; // 有这个标记的就是默认虚拟主机

   server_name aaa.com; //主机名

   index index.html index.htm index.php; //指定索引页

   root /data/wwwroot/default; //网址的路径

测试:

mkdir -p /data/wwwroot/default/ //创建default目录

echo “This is a default site.”>/data/wwwroot/default/index.html //定义index.html

/usr/local/nginx/sbin/nginx –t //检查语法错误

技术分享图片

/usr/local/nginx/sbin/nginx -s reload //重新加载服务,好处是当配置文件里有错误时是不会生效的

技术分享图片

12.8 Nginx用户认证

  • 访问网站时需要认证:

创建一个虚拟主机:vim /usr/local/nginx/conf/vhost/test.com.conf //写入如下内容

server

   listen 80;

   server_name test.com;

   index index.html index.htm index.php;

   root /data/wwwroot/test.com;

   

location  / // 根:/ 指的就是全站

   

       auth_basic              "Auth"; //定义用户认证的名字

       auth_basic_user_file   /usr/local/nginx/conf/htpasswd; //用户名密码文件所在位置

要用到apache的htpasswd文件来创建用户名密码文件

/usr/local/apache2.4/bin/htpasswd -c /usr/local/nginx/conf/htpasswd aming

技术分享图片

创建第二个:/usr/local/apache2.4/bin/htpasswd /usr/local/nginx/conf/htpasswd user1

技术分享图片

-t && -s reload //测试配置并重新加载

技术分享图片

测试:

curl -x127.0.0.1:80 test.com -I //状态码为401,说明访问的内容需要用户认证

技术分享图片

技术分享图片

curl -x127.0.0.1:80 -uaming:123456 test.com //状态码404,因为没有创建index.html

技术分享图片

技术分享图片

创建目录:mkdir /data/wwwroot/test.com

创建index.html:echo “test.com”>/data/wwwroot/test.com/index.html

技术分享图片

  • 访问目录时需要认证:目录名admin

vim /usr/local/nginx/conf/vhost/test.com.conf //编辑test.com.conf

server

   listen 80;

   server_name test.com;

   index index.html index.htm index.php;

   root /data/wwwroot/test.com;

   location  /admin/ //更改目录名字为admin

   

       auth_basic              "Auth";

       auth_basic_user_file   /usr/local/nginx/conf/htpasswd;

   

技术分享图片

访问网站时,不需要指定用户名和密码

技术分享图片

访问admin目录时,需要用户名和密码

技术分享图片

创建admin目录:mkdir /data/wwwroot/test.com/admin

创建admin目录下的index.htm:echo “test.com admin dir”>/data/wwwroot/test.com/admin/index.html

技术分享图片

  • 访问文件时需要认证:文件名admin,php

vim /usr/local/nginx/conf/vhost/test.com.conf //编辑test.com.conf

server

   listen 80;

   server_name test.com;

   index index.html index.htm index.php;

   root /data/wwwroot/test.com;

   location  ~ admin.php //~:匹配,匹配admin.php

   

       auth_basic              "Auth";

       auth_basic_user_file   /usr/local/nginx/conf/htpasswd;

   

技术分享图片

访问目录时,不需要指定用户名和密码

技术分享图片

访问文件时,需要指定用户名和密码

技术分享图片

12.9 Nginx域名重定向

Nginx的域名重定向和httpd的类似

更改配置文件:vim /usr/local/nginx/conf/vhost/test.com.conf

server

   listen 80;

   server_name test.com test1.com test2.com; // server_name后面支持写多个域名。httpd:ServerName后面只有1个域名,ServerAlias后面跟多个域名,

   index index.html index.htm index.php;

   root /data/wwwroot/test.com;

   if ($host != 'test.com' )

       rewrite  ^/(.*)$  http://test.com/$1  permanent; permanent为永久重定向,状态码为301,如果写redirect则为302

   

技术分享图片

测试:

查看状态码:301,

重定向到(最后一行):

技术分享图片

技术分享图片


2017-12-192周2次课

2.10环境变量PATH本章用到的命令:which(用来查找摸个命令的绝对路径)。示例如下:    [[email protected]~]#whichrmdir      ~查询rmdir路径         查看详情

2018.4.1216周2次课

十六周二次课(4月12日)19.1Linux监控平台介绍19.2zabbix监控介绍19.3/19.4/19.6安装zabbix19.5忘记Admin密码如何做19.1Linux监控平台介绍cacti、nagios、zabbix、smokeping、open-falcon等等cacti、smokeping偏向于基础监控,成图非常漂亮cacti、nagios、zabb... 查看详情

2018-2-279周5次课

11.6MariaDB安装11.7/11.8/11.9Apache安装用wget下载3个安装包如下图:下载完成后分别解压缩如下图:安装apr安装apr-util安装httpd安装完成后进入apache2.4目录下查看apache加载了哪些模块启动apache 查看详情

2018.4.2618周2次课

十八周二次课(4月26日)20.31expect脚本同步文件20.32expect脚本指定host和要同步的文件20.33构建文件分发系统20.34批量远程执行命令20.31expect脚本同步文件自动同步文件编辑脚本文件:vi4.expect#!/usr/bin/expectsetpasswd"123456"spawnrsync... 查看详情

2018.3.110周2次课

十周第二次课(3月1日)11.14/11.15Apache和PHP结合11.16/11.17Apache默认虚拟主机11.14/11.15Apache和PHP结合配置httpd支持phphttpd主配置文件/usr/local/apache2.4/conf/httpd.confvim/usr/local/apache2.4/conf/httpd.conf //修改以下4个地方Server 查看详情

2018.1.237周2次课

七周二次课(1月23日)10.6监控io性能10.7free命令10.8ps命令10.9查看网络状态10.10linux下抓包10.6监控io性能1.iostat来对linux硬盘IO性能进行检测使用iostat,需要先安装sysstat,即yum-yinstallsysstatiostat可以产生三种类型的报告:CPU利用情况报... 查看详情

2017.12.222周5次课

2017.12.22二周第五次课2.23/2.24/2.25 find命令2.26 文件名后缀2.23/2.24/2.25 find命令1.学会使用快捷键1)ctrl+C:结束(终止)当前命令。如果你输人了一大串字符,但不想运行,可以按ctrl+C组合键,此时光标将跳入下一行,而... 查看详情

2017.12.263周2次课

三周第二次课(12月26)3.4usermod命令 3.5用户密码管理3.6mkpasswd命令3.4usermod命令 命令【usermod】用于修改用户的基本信息。usermod命令不允许你改变正在线上的使用者帐号名称格式:usermod[选项]用户名选项:#-c<备注> 修改... 查看详情

2018.1.95周2次课

五周第二次课(1月9日)7.6yum更换国内源7.7yum下载rpm包7.8/7.9源码包安装7.6yum更换国内源1.恢复之前备份的文件2.进入“/etc/yum.repos.d”目录3.删除“CentOS-Base.repo”文件4.下载“163.repo”文件wgethttp://mirrors.163.com/.help/CentOS7-Base-163... 查看详情

2017-12-121周2次课

1.6/1.7配置IP 配置ip相关命令 #dhclient  (自动获取IP)#ipaddr 和ifconfig  (查看ip地址)#ping www.baidu.com   (查看是否能上网)#vi       &n 查看详情

2018.1.308周2次课

八周二次课(1月30日)10.28rsync工具介绍10.29/10.30rsync常用选项10.31rsync通过ssh同步10.28rsync工具介绍作为一个系统管理员,数据备份是非常重要的。在以后的系统维护工作中,你一定要时刻牢记给数据做备份。在Linux系统下数据备份... 查看详情

2018.4.1917周2次课

十七周二次课(4月19日)20.10for循环20.11/20.12while循环20.13break跳出循环20.14continue结束本次循环20.15exit退出整个脚本20.10for循环for循环结构是在日常运维工作中使用最频繁的循环结构。语法:for变量名in条件;do…;done数字循环:vifor1.... 查看详情

2018-1-237周2次课

监控io性能监控io性能,free,ps命令,查看网络状态以及抓包1.iostat命令:[[email protected]~]#iostatLinux3.10.0-693.el7.x86_64(weix01)2018年01月23日_x8664(1CPU)avg-cpu:%user%nice%system%iowait%steal%idle0.490.001.151.280.0097.0 查看详情

2017.12.192周2次课

2017.12.19二周第二次课2.10环境变量PATHecho用来输出PATH的值。PATH前面的$是变量的前缀符号1.你的命令在上述几个目录里面,在输入命令时就不用输入绝对路径,直接使用。因为在输入命令时,系统会在上述的几个目录里去寻找这个... 查看详情

2018-3-711周2次课(代码片段)

11.28限定某个目录禁止解析php11.29限制user_agent11.30/11.31php相关配置eval,assert,popen,passthru,escapeshellarg,escapeshellcmd,passthru,exec,system,chroot,scandir,chgrp,chown,escapeshellcmd,escapeshellarg,shell_exec,p 查看详情

2018.1.34周2次课

四周第二次课(1月3日)5.1vim介绍5.2vim颜色显示和移动光标5.3vim一般模式下移动光标5.4vim一般模式下复制、剪切和粘贴5.1vim介绍vim是vi的升级版vim时带有颜色显示的安装命令:yuminstall-yvim-enhancedVim有3种模式:一般模式、编辑模式... 查看详情

2018.3.711周2次课

十一周二次课(3月7日)11.28限定某个目录禁止解析php11.29限制user_agent11.30/11.31php相关配置11.28限定某个目录禁止解析php对于使用PHP语言编写的网站,有一些目录是有需求上传文件的,比如在前面列举的那个防盗链案例,因为服务... 查看详情

2017.12.212周4次课

二周第四次课(12月21日)2.18特殊权限set_uid2.19特殊权限set_gid2.20特殊权限stick_bit2.21软链接文件2.22硬连接文件2.18特殊权限set_uidsetuid:该权限针对二进制可执行文件,使文件在执行阶段具有文件所有者的权限,即可以让普通用户... 查看详情