@TOC 一、nginx地址重写 1、nginx地址重写(rewrite)介绍 nginx地址重写的主要功能是实现URL地址的重定向。服务器获得一个来访的URL请求,然后改写成服务器可以处理的另一个URL 语法格式:
@TOC
一、nginx地址重写
1、nginx地址重写(rewrite)介绍
nginx地址重写的主要功能是实现URL地址的重定向。服务器获得一个来访的URL请求,然后改写成服务器可以处理的另一个URL
语法格式: rewrite 旧的地址(支持正则) 新的地址 标签(可忽略)
2、主文件配置方式与步骤
① 基本配置转发
[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf //编辑主配置文件
server {
listen 80;
server_name web.com.cn;
rewrite "/a.html$" /b.html; //地址重写配置
[root@localhost ~]# /usr/local/nginx/sbin/nginx -s reload //重启nginx服务
② 基本正则转发
[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf //编辑主配置文件
server {
listen 80;
server_name web.com.cn;
rewrite ^/ http://www.baidu.com.cn; //地址重写配置^/指的是匹配/usr/local/nginx/html下的所有网页,访问任何网站的时候都会跳转到baidu.com.cn下
[root@localhost ~]# /usr/local/nginx/sbin/nginx -s reload //重启nginx服务
③ 高级正则地址重写
[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf //编辑主配置文件
server {
listen 80;
server_name web.com.cn;
rewrite ^/(.*)$ http://www.baidu.com.cn/$1; //地址重写配置,使用正则,()代表保留,nginx使用$1代表第一个保留字串,$2则代表第二个保留字串
[root@localhost ~]# /usr/local/nginx/sbin/nginx -s reload //重启nginx服务
二、LNMP动态网站
L:linux操作系统N:Nginx网站服务软件M:Mysql、MariaDB数据库P:网站开发语言(PHP)
1、LNMP原理:
nginx: 单独部署,只能处理静态数据;静态数据:指的是每次打开或者访问的时候,都是看到相同的内容,不会发生变化的动态数据:每次运行,执行时都可以得到不同的结果
① lnmp对静态数据的处理过程
② lnmp对动态数据的处理过程
2、部署LNMP网站
① 搭建nginx
[root@localhost ~]# yum -y install gcc pcre-devel openssl-devel //安装依赖包
[root@localhost ~]# tar -xf nginx-1.16.1 //解压编译包
[root@localhost ~]# cd nginx-1.16.1
[root@localhost nginx-1.16.1]#
--prefix=/usr/local/nginx \
--with-http_ssl_module
[root@localhost nginx-1.16.1]# make && make install //编译安装
② 安装MariaDB数据库
[root@localhost ~]# yum -y install mariadb-server mariadb mariadb-devel
③ 安装php解释器
[root@localhost ~]# yum -y install php php-fpm php-mysql
④ 启动所有服务
[root@localhost ~]# /usr/local/nginx/sbin/nginx //启动nginx服务
[root@localhost ~]# systemctl start mariadb //开启mariadb服务
[root@localhost ~]# systemctl start php-fpm //开启php-fpm服务
[root@localhost ~]# systemctl enable mariadb //设置mariadb服务开机自启
[root@localhost ~]# systemctl enable php-fpm //设置php-fpm服务开机自启
三、配置动静分离
1、location语法
localtion /test {
deny 10.10.10.10; //拒绝10.10.10.10
}
localtion /video {
/*允许20.20.20.20,其它的禁用*/
allow 20.20.20.20;
deny all;
}
localtion / {
allow all; //允许所有
}
2、修改配置文件,配置nginx动静分离
[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf
// location 处理静态网页
localtion / {
root html;
index index.html index.htm;
}
location ~\.php$ {
root html;
fastcgi_pass 127.0.0.1:9000; //指定转发请求
fastcgi_index index.php; //php为默认页面
include fastcgi.conf;
}
[root@localhost ~]# /usr/local/nginx/sbin/nginx -s reload //重启服务
[root@localhost ~]# iptables -F // 清空防火墙策略