学习自动化运维的第四天(nginx架构实战篇)

一、LNMP部署动态网站

1.1安装LNMP 环境

部署linux
部署nginx
部署php
部署mysql
这里只讲部署php和mysql

1.1.1部署php

rpm部署php:
yum install -y php-fpm php-mysql php-gd
在这里插入图片描述
开启,systemctl start php-fpm
开机自启 systemctl enable php-fpm

开启后我们测试一下

  • 在**/usr/share/nginx/html**下创建一个php型的文件,用来测试php是否安装成功。
    在这里插入图片描述
    在这里插入图片描述

  • 修改配置文件
    /etc/nginx/conf.d/default.conf
    在这里插入图片描述
    注释掉原来的。
    在这里插入图片描述

  • 测试
    打开浏览器
    在这里插入图片描述

1.1.2MySQL部署

安装mysql服务器和客户机程序:
yum -y install mariadb-server mariadb
启动MySQL: systemctl start mariadb
开机自启:systemctl enable mariadb
在这里插入图片描述
修改mariadb 密码为123456:
mysqladmin password '123456’
准备数据库:
create database bbs;
在这里插入图片描述

授权用户:
grant all on bbs. to phptest@‘服务器IP’ identified by ‘数据库密码’;*
在这里插入图片描述
测试
在**/usr/share/nginx/html/index.php**里写入:
在这里插入图片描述
浏览器访问时,nginx会把.php文件丢给php处理,php把文件转换成html文件后再给nginx
测试结果:
在这里插入图片描述

接下来我们再LNMP环境下部署一个动态网站

1.2LNMP部署动态网站

1.下载动态网站包
wget https://cn.wordpress.org/wordpress-4.9.1-zh_CN.zip
也可以到官网去下最新版
在这里插入图片描述
2.删除**/usr/share/nginx/html** 下的所有文件,只留下网站的所有文件。
在这里插入图片描述
在这里插入图片描述
3.授权
对网站所有文件进行授权:
chown -R nginx.nginx /usr/share/nginx/html/
chmod -R 777 /usr/share/nginx/html/
*

补: 导入数据到数据库里:
在这里插入图片描述

4.测试
打开浏览器进行测试
在这里插入图片描述
安装完成后的主页面:
在这里插入图片描述

二、Nginx location

在设置location时,后面是个正则表达式,匹配相关的页面。

2.1介绍

在这里插入图片描述

语法:

location 正则表达式匹配一些页面, {
具体针对匹配到的页面做的事情 (模块)
}

在设置location时,后面是个正则表达式,匹配相关的页面。
例:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
补:
如果在 /usr/share/nginx/html 里创建一个文件 ,例如 1.html 那么 在浏览器访问时,直接在IP后面加上这个页面就可以访问。
在这里插入图片描述
在这里插入图片描述

2.2Nginx location 优先级

在设置location时,后面是个正则表达式,匹配相关的页面。
正则表达式也分等级
= > ^~ > /
举例:
在这里插入图片描述
在这里插入图片描述

接下来通过浏览器访问进行验证:
在这里插入图片描述
说明 = 的优先级更高
在这里插入图片描述
在这里插入图片描述

三、Nginx Rewrite

在设置location时,后面是个正则表达式,匹配相关的页面

3.1简介

  1. URL Rewrite最常见的应用是URL伪静态化,是将动态页面显示为静态页面方式的一种技术。比如
    http://www.123.com/news/index.php?id=123 使用URLRewrite 转换后可以显示为 http://www.123
    .com/news/123.html对于追求完美主义的网站设计师,就算是网页的地址也希望看起来尽量简洁明快。
    理论上,搜索引擎更喜欢静态页面形式的网页,搜索引擎对静态页面的评分一般要高于动态页面。所
    以,UrlRewrite可以让我们网站的网页更容易被搜索引擎所收录。

  2. 从安全角度上讲,如果在URL中暴露太多的参数,无疑会造成一定量的信息泄漏,可能会被一些黑客
    利用,对你的系统造成一定的破坏,所以静态化的URL地址可以给我们带来更高的安全性。

  3. 实现网站地址跳转,例如用户访问360buy.com,将其跳转到jd.com。

3.2相关指令

语法:

  • rewrite:即将访问的用户地址 更换成指定的地址
  • location { rewrite } 只能替换url中的目录路径, 使用if (){rewrite}可以替换协议主机目录全部能容。

3.3示例

3.3.1

1.目的:
当用户访问http://192.168.148.152/a/1.html 地址时,
通过redirect 重定向至http://192.168.148.152/a/2.html
2.编写rewrite
在这里插入图片描述
在这里插入图片描述
3.测试
在这里插入图片描述

3.3.2

1.目的
location { rewrite } 只能替换url中的目录路径,
使用if (){rewrite}可以替换协议主机目录全部能容。
将http://www.qianfeng.com
换http://jd.com
2.编写rewrite
在这里插入图片描述
做域名解析:
在这里插入图片描述

3.测试
在这里插入图片描述

3.3.3

1目的
目录的表达方式发生变化。
原先的“-”分割,变成了“/"目录层次。
2.编写rewrite
在这里插入图片描述

在这里插入图片描述
3.测试
在这里插入图片描述

3.3.4

1.目的
如果访问服务器中的特殊文件。如:.sh结尾的文件。则返回403操作拒绝错误。
2.编写rewrite
在这里插入图片描述
在这里插入图片描述

3.测试
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值