nginx 重写URL尾部斜杠

1. 在URL结尾添加斜杠


在虚拟主机中这么添加一条改写规则:

rewrite ^(.*[^/])$ $1/ permanent;

例如:

server {

listen 80;

server_name bbs.ttlsa.com;

rewrite ^(.*[^/])$ $1/ permanent;

}

2. 删除URL结尾的斜杠

在虚拟主机中这么添加一条改写规则:

rewrite ^/(.*)/$ /$1 permanent;

例如:

server {

listen 80;

server_name bbs.ttlsa.com;

rewrite ^/(.*)/$ /$1 permanent;

}

不过建议删除URL结尾的斜杠,会混乱搜索引擎的。

时间: 2024-10-20 23:01:31

nginx 重写URL尾部斜杠的相关文章

ASP.NET MVC中URL末尾斜杠的实现

在网站的SEO优化中,通常都会涉及到URL结尾斜杠的问题. http://blog.sina.com.cn/s/blog_828e7ce40100srj1.html http://www.dengyouqi.com/websiteoptimization/963.html http://ask.seowhy.com/question/1221   在.NET MVC里面可以通过下面非常简单的方式做到这个效果 但是.NET MVC 4.0以上版本才开始支持.

Nginx之proxy_pass指令url反斜杠作用

在nginx中配置proxy_pass代理转发时,其后面的url中反斜杠/ 的匹配处理时常出现意想不到的问题发生,以下说明两种情况:(1)如果在proxy_pass后面的url加/,表示绝对根路径:(2)如果在proxy_pass后面的url没有/,表示相对路径,把匹配的路径部分也给代理走. 下面四种情况分别用 http://127.0.0.1/proxy/test.html 进行访问测试 第一种情况: location /proxy/ { proxy_pass http://127.0.0.1

URL中斜杠/和反斜杠\的区别小结

./SRC/  这样写表示,当前目录中的SRC文件夹: ../SRC/  这样写表示,当前目录的上一层目录中SRC文件夹: /SRC/   这样写表示,项目根目录(可以只磁盘根目录,也可以指项目根目录,具体根据实际情况而定) Unix使用斜杆/ 作为路径分隔符,而web应用最新使用在Unix系统上面,所以目前所有的网络地址都采用 斜杆/ 作为分隔符. Windows由于使用 斜杆/ 作为DOS命令提示符的参数标志了,为了不混淆,所以采用 反斜杠\ 作为路径分隔符.所以目前windows系统上的文

【nginx重写url】之 当项目有多个入口文件时

为了让url更美观,我们不愿意看到 .php 字样的url(逼格高). 但当我们的php项目有多个入口文件时,(假如有index.php, admin.php, app.php, api.php 四个入口文件),在不处理的状态下,url会呈现出这般景象: www.example.com/index.php/xxx/xxx/... www.example.com/admin.php/xxx/xxx/... www.example.com/app.php/xxx/xxx/... www.exampl

springboot中URL带有斜杠的转义字符百分之2F导致的400错误

背景: 今天项目上出现一个问题,是前端的GET请求url中带有路径参数,这个参数中有/这个特殊字符,在postman的url中已经转移成了%2F,后端用的是springboot,并没有收到这个请求,直接返回了400的错误 原因: 据说是tomcat默认是不支持转义的,需要手动设置一下转化,这个搜索tomcat的设置可以找到,但是这个是springboot,有内置的tomcat,但是在yml中找不到相关的配置. 解决方法: 修改一下启动类,加一个系统参数,重写WebMvcConfigurerAda

apache2.4.7 .htaccess重写url的一些细节

今晚玩了下apache的重写规则,发现一些被容易忽略的细节,分享一下. 首先,说明一下实例环境的其他相关配置: documentRoot /var/www/html .htaccess的放置路径 /var/www/html/L-Production/public 1.替换规则的“绝对”和“相对”,例如: 1 # Redirect Trailing Slashes... 2 RewriteRule ^(.*)/$ /$1 [L,R=301] 这是一个用重定向消除url最后斜杠的实现,这里需要注意 

url末尾的斜杠作用探秘

今天突然好奇,想区分www.abc.com/efg 和www.abc.com/efg/这两个网址的区别.即分析一下url末尾加个斜杠是否有特殊的效果. 找到网上的介绍: 当Web服务器接收到对某个末尾不含斜杠的url请求时,例如"www.abc.com/efg",这时服务器会搜索网站根目录下有没有名为"abc"的文件,如果没有就把abc当做目录处理,然后返回abc目录下的默认首页.当Web服务器接收到的是末尾带斜杠的请求时就会直接当做目录处理. 同样,根据微软官方文

nginx url自动加斜杠问题

一.首先对比说明Nginx以下两个现象: 1. 访问的uri最后带斜杠 http://localhost/product/    >>>>  查找 product下的index页面,存在就返回:不存在且未开启自动索引目录选项(指令是:autoindex on),则报403错误 2. 访问的uri最后不带斜杠 http://localhost/product     >>>>  查找product文件,存在就返回:若存在product的文件夹,会产生301跳转

Nginx之URL重写

1.URL重写模块(Rewrite) 摘要 这个模块允许使用正则表达式重写URI(需PCRE库),并且可以根据相关变量重定向和选择不同的配置.如果这个指令在server字段中指定,那么将在被请求的location确定之前执行,如果在指令执行后所选择的location中有其他的重写规则,那么它们也被执行.如果在location中执行这个指令产生了新的URI,那么location又一次确定了新的URI.这样的循环可以最多执行10次,超过以后nginx将返回500错误. 指令 break 语法:bre