linux_nginx_rewrite
2017-12-26 13:10
260 查看
什么是Nginx的rewrite?
实现URL地址重写,比较复杂的write需要开发来完成,伪静态处理实现是开发的工作,
这rewrite写在location中
指令语法: rewrite regex relplacement[flag]
rewrite ^/(.*) http://www.yunhello.cn/$1 permanet
rewrite # 固定关键字,开启正则匹配规则, $1 表示前面()内匹配的内容
regex 部分是 ^/(.*) 这个是正则表达式,匹配所有,匹配成功后跳转到http://www.yunhello.cn/$1, $1 是前面正则括号内匹配到的内容
permanet 永久重定向标记,即永久跳转到后面的 http://www.yunhello.cn/$1 地址上,也就是跳转到这个url中,又重新通过Nginx进行匹配
除了 permanet 标记后,还有哪些?
redirect 302 临时重定向
permanet 301 永久重定向
last 本次规则匹配完,继续向下匹配location
break 本次规则匹配完,不在向下匹配
Nginx Rewrite的企业应用场景
必须使用到
可以调整用户浏览器的URL,看起来更规范,合乎开发和产品人员的需求
让搜索引擎收录和更好的用户体验,伪静态或纯静态
网站换了域名后,让旧的域名的访问跳转到新的域名上,让京东的360buy换成jd.com
Nginx访问认证
企业内部人员使用,企业后台,mysql客户端phpmyadmin,企业内部CRM,WIKI等网站平台
放到 location中或者放到server中
auth_basic 提示
auth_basic_user_file 默认值 - , 接密码认证文件,和rsync客户端密码文件格式一样
站点后台:
这个rewrite功能是什么呢,具体体现方向是什么?
重写url 和完成域名跳转
具体方向是浏览器中网站地址框更好看了,也就是说只是更改了url显示,还有跳转的时候,先显示原url再显示跳转到URL
403错误出现的原因:
没有首页,或没有读这个文件的权限
实现URL地址重写,比较复杂的write需要开发来完成,伪静态处理实现是开发的工作,
这rewrite写在location中
指令语法: rewrite regex relplacement[flag]
rewrite ^/(.*) http://www.yunhello.cn/$1 permanet
rewrite # 固定关键字,开启正则匹配规则, $1 表示前面()内匹配的内容
regex 部分是 ^/(.*) 这个是正则表达式,匹配所有,匹配成功后跳转到http://www.yunhello.cn/$1, $1 是前面正则括号内匹配到的内容
permanet 永久重定向标记,即永久跳转到后面的 http://www.yunhello.cn/$1 地址上,也就是跳转到这个url中,又重新通过Nginx进行匹配
server { listen 80; server_name bbs.yunhello.cn; location / { rewrite ^/(.*)http://www.yunhello.cn/$1 permanet; } } # 这个rewrite是跳转到新的站点上
除了 permanet 标记后,还有哪些?
redirect 302 临时重定向
permanet 301 永久重定向
last 本次规则匹配完,继续向下匹配location
break 本次规则匹配完,不在向下匹配
Nginx Rewrite的企业应用场景
必须使用到
可以调整用户浏览器的URL,看起来更规范,合乎开发和产品人员的需求
让搜索引擎收录和更好的用户体验,伪静态或纯静态
网站换了域名后,让旧的域名的访问跳转到新的域名上,让京东的360buy换成jd.com
Nginx访问认证
企业内部人员使用,企业后台,mysql客户端phpmyadmin,企业内部CRM,WIKI等网站平台
放到 location中或者放到server中
auth_basic 提示
auth_basic_user_file 默认值 - , 接密码认证文件,和rsync客户端密码文件格式一样
站点后台:
server { listen 80; server_name manage.etiantian.org; location / { auth_basic "hahaha" auth_basic_user_file conf/htpassd } } # 密码文件: conf/htpassd name1:passwd1:comment # 用户名:密码:说明,这里密码是加密的,不能人工修改,通过apache的htpasswd命令创建 htpasswd -cb /application/nginx/conf/htpasswd user password # 创建用户和密码,指定存放文件,-c 指定文件, -b非交互式
这个rewrite功能是什么呢,具体体现方向是什么?
重写url 和完成域名跳转
具体方向是浏览器中网站地址框更好看了,也就是说只是更改了url显示,还有跳转的时候,先显示原url再显示跳转到URL
403错误出现的原因:
没有首页,或没有读这个文件的权限
相关文章推荐
- [linux] Nginx编译安装错误error: the HTTP rewrite module requires the PCRE library
- Linux Nginx Rewrite
- Linux-Nginx-Rewrite规则-1
- Linux(Centos)之安装Nginx及注意事项
- linux重启php和nginx的方法
- Linux-LNMP-Nginx配置二
- Linux(CentOS)系统下设置nginx开机自启动
- 解决Linux 启动 Nginx报错 :nginx: [emerg] mkdir() "/var/temp/nginx/client" failed (2: No such file or direc
- nginx的搭建-Linux上
- 【Linux进阶】CentOS安装Nginx服务器
- nginx,rewrite,proxy_pass,post数据,表单
- Linux基础-----------nginx安装和nginx web、nginx反向代理、nfs 服务
- magento在Nginx下的Rewrite(伪静态规则)
- Linux上搭建Nginx及简单配置!
- linux 安装nginx-1.10.2+php-5.6.30+MySQL5.7
- Linux下配置Nginx和Tomcat
- NGINX url rewrite 功能不生效
- L09-10老男孩Linux运维实战培训-Nginx服务生产实战应用指南05(架构解决方案)
- linux下nginx配置之phpmyadmin与web
- Linux下安装Nginx