.htaccess 文件向 URL 添加尾部斜杠

问题描述 投票:0回答:1

我有一个博客,页面应该重定向到“漂亮的 URLS”,如下所示:

https://www.example.org/blog-post-title

我正在使用这段代码:

RewriteEngine On

# SSL
RewriteCond %{HTTPS} off 
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

# GENERAL
RewriteRule ^([a-z-0-9]+)$ post.php?blog_slug=$1
RewriteRule ^top-picks$ top.php
RewriteRule ^privacy-policy$ privacy.php
RewriteRule ^sitemap$ sitemap.php
RewriteRule ^([a-z-A-Z-0-9]{8})$ link.php?redirect=$1

我以前用过很多次(在一个变体或另一个变体中) - 但它添加了一个尾部斜线并且每次都找不到页面:

https://www.example.org/blog-post-title/

有人知道我做错了什么吗?其他页面工作正常 - post.php 页面上的代码正确调用了 $_GET 变量,我似乎无法摆脱尾部的斜线,而且它不会发生在我的任何其他网站上?!

.htaccess redirect friendly-url
1个回答
0
投票

使用您显示的示例和尝试,请尝试遵循 .htacess 规则文件。请确保在测试您的 URL 之前清除您的浏览器缓存。

RewriteEngine On

# SSL
RewriteCond %{HTTPS} off 
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

# GENERAL
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-z-0-9]+)$ post.php?blog_slug=$1 [NC,QSA,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^top-picks$ top.php  [NC,QSA,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^privacy-policy$ privacy.php  [NC,QSA,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^sitemap$ sitemap.php  [NC,QSA,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-z-A-Z-0-9]{8})$ link.php?redirect=$1  [NC,QSA,L]
© www.soinside.com 2019 - 2024. All rights reserved.