htaccess:从URL添加/删除尾部斜杠

我的网站运行的脚本名为-> WSS壁纸脚本

->我一直在尝试强制删除或在URL末尾添加斜杠,以防止重复的内容并清理URL。

我尝试了各种尝试,尝试了所有可以想到的东西,并尝试从Interweb进行加载,但是还没有运气!这可能是一个快速解决方案,但是我已经看了太多了,因此我可能看不到一些显而易见的东西。

因此,我向您提供所有.htaccess代码:

DirectoryIndex index.php

RewriteEngine on

RewriteRule ^download/([0-9]+)?/([0-9]+)x([0-9]+)/([^/\.]+) image.php?id=$1&width=$2&height=$3&cropratio=$4&download=1 [L]

RewriteRule ^file/([0-9]+)?/([0-9]+)x([0-9]+)/([^/\.]+) image.php?id=$1&width=$2&height=$3&cropratio=$4 [L]

RewriteRule ^preview/([0-9]+)?/([0-9]+)x([0-9]+)/([^/\.]+) wallpaper_preview.php?id=$1&width=$2&height=$3&name=$4 [L]

RewriteRule ^thumbnail/([0-9]+)?/([0-9]+)x([0-9]+)/([^/\.]+)/([^/\.]+)/([^/\.]+)/([^/]+) image.php?wallpaper_id=$1&width=$2&height=$3&cropratio=$4&align=$5&valign=$6&file=$7 [L]

RewriteRule ^cat/([0-9]+)?/([^/\.]+)/p([0-9]+) index.php?task=category&id=$1&name=$2&page=$3 [L]

RewriteRule ^cat/([0-9]+)?/([^/\.]+)/([0-9a-zA-Z?-]+)/p([0-9]+) index.php?task=category&id=$1&name=$2&sortby=$3&page=$4 [L]

RewriteRule ^cat/([0-9]+)?/([^/\.]+)/([0-9a-zA-Z?-]+)-([0-9]+) index.php?task=category&id=$1&sortby=$3&page=$4 [L]

RewriteRule ^cat/([0-9]+)?/([^/\.]+) index.php?task=category&id=$1&name=$2 [L]

RewriteRule ^tag/([^/\.]+)/([0-9a-zA-Z?-]+)/([0-9]+) index.php?task=tag&t=$1&sortby=$2&page=$3 [L]

RewriteRule ^tag/([^/\.]+) index.php?task=tag&t=$1 [L]

RewriteRule ^profile/([0-9]+)?/([^/\.]+) index.php?task=profile&id=$1&name=$2 [L]

RewriteRule ^profile/comments/([0-9]+)?/([^/\.]+) index.php?task=users_comments&id=$1&name=$2 [L]

RewriteRule ^page/([0-9]+) index.php?task=view_page&id=$1 [L]

RewriteRule ^register index.php?task=register [L]

RewriteRule ^lost-password index.php?task=lost_pass [L]

RewriteRule ^links index.php?task=links [L]

RewriteRule ^news/item/([0-9]+)/([^/\.]+) index.php?task=news&id=$1 [L]

RewriteRule ^news/page([0-9]+) index.php?task=news&page=$1 [L]

RewriteRule ^members/([^/\.]+)-([^/\.]+)/page([0-9]+)? index.php?task=member_list&sort=$1&order=$2&page=$3 [L]

RewriteRule ^members index.php?task=member_list [L]

RewriteRule ^messages index.php?task=messages [L]

RewriteRule ^submit index.php?task=submit [L]

RewriteRule ^search/([^/\.]+) index.php?task=search&q=$1 [L]

RewriteRule ^search index.php?task=search [L]

RewriteRule ^submit index.php?task=submit [L]

RewriteRule ^r-([0-9]+)?-([0-9]+)? go.php?id=$1&ref=$2 [L]

RewriteRule ^r-([0-9]+)? go.php?id=$1 [L]

RewriteRule ^([^/\.]+)/([0-9]+)/([^/\.]+) index.php?task=view&id=$2&name=$3 [L]

RewriteRule ^news/([^/\.]+) index.php?task=news&name=$1 [L]

RewriteRule ^profile/([^/\.]+) index.php?task=profile&name=$1 [L]

RewriteRule ^news index.php?task=news [L]

RewriteRule ^page/([^/\.]+) index.php?task=view_page&name=$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^([^/\.]+)/([0-9a-zA-Z'?-]+)/([0-9]+) index.php?task=category&name=$1&sortby=$2&page=$3 [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^([^/\.]+)/([^/\.]+) index.php?task=view&name=$2 [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^([^/\.]+) index.php?task=category&name=$1 [L]

## www reslove ##

RewriteCond %{HTTP_HOST} !^www\.

RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

## www reslove ##

## index reslove ##

Options +FollowSymLinks

RewriteCond %{THE_REQUEST} ^.*/index\.php

RewriteRule ^(.*)index.php$ http://www.epicwallpaper.net/$1 [R=301,L]

## index reslove ##

回答:

在该RewriteEngine On行下方,添加:

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)/$ /$1 [L,R] # <- for test, for prod use [L,R=301]

实施不拖尾的斜线政策。

要实施斜杠策略:

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(.*[^/])$ /$1/ [L,R] # <- for test, for prod use [L,R=301]


:评论了这些R=301部分,因为,如评论中所述:

!在那里放置它

:如果您不能在所有打开它的机器上清除浏览器缓存,它就会以某种方式不可逆转。测试时,最好选择简单RR=302

完成测试后,您可以使用R=301

以上是 htaccess:从URL添加/删除尾部斜杠 的全部内容, 来源链接: utcz.com/qa/407286.html

回到顶部