当前位置: 首页 > 知识库问答 >
问题:

如何在添加尾部斜杠(.htaccess/mod_rewrite)后重写URL?

东方涛
2023-03-14

我不太习惯使用htaccess文件,所以我在这一点上挣扎了一段时间:

我想知道在向初始URL添加尾部斜杠(301重定向)后,如何将URL(example.com/foo/bar)重写为(example.com/index.php?q=/foo/bar):

我知道如何单独添加尾随斜杠:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ http://exemple.com/$1/ [L,R=301]

以及如何重写为index.php:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L]

但我就是不知道如何同时做到这两个。。。

欢迎任何帮助!

皮埃尔·弗雷泽

共有2个答案

王飞英
2023-03-14

您在这里有一个公认的答案,但我仍然喜欢回答这个问题,因为实际的答案要比在另一个答案中通过多个(缓慢的)重定向运行它简单得多。

将此代码放入.htaccess文档根目录下:

Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php?q=%{REQUEST_URI} [L]

燕永昌
2023-03-14

在你的.htaccess中试试这个(我尽可能地测试了它):

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [L]

RewriteCond %{REQUEST_URI} [^/]$
RewriteRule ^(.*)$ $1/ [L,R=301]

RewriteRule ^(.*)$ index.php?q=$1 [L]
 类似资料:
  • 问题内容: 我的网站运行的脚本名为-> WSS壁纸脚本 我的问题 ->我一直在尝试强制删除或在URL末尾添加斜杠,以防止重复的内容并清理URL。 我尝试了各种尝试,尝试了所有可以想到的东西,并尝试从Interweb进行加载,但是还没有运气!这可能是一个快速解决方案,但是我已经看了太多了,因此我可能看不到一些显而易见的东西。 因此,我向您提供所有代码: 问题答案: 在该行下方,添加: 实施不拖尾的斜

  • 以下是我的htaccess代码: 我需要制定一个重写规则,如下所示:

  • 当我调用spring-boot应用程序的上下文根“localhost:8080/api/players”时,它通过注释@getmapping(path={“/”,“”})映射到RestController方法中,将alway redirect(httpstatus:307临时redirect)下拖到“localhost:8080/api/players/”,并在末尾添加尾随斜杠。 我的应用程序上下

  • 我们已经为我的公司创建了一个新网站,我们决定保留旧网站,并使其将所有内容和页面重定向到新网站的类似内容页面。 我已经创建了一个htaccess文件来替换旧网站上的旧文件。 这个htaccess文件包含以下行:

  • 要发布一个插件,我必须更改代码以使用Wordpress HTTP API。 因此,我翻译了我的代码。 之前。 之后 但是对于函数wpremotepost我有这个问题。 当JSON数据发送到远程主机时,数据内部带有反斜杠。 示例: 怎么啦? 我在翻译原点代码时有错吗? 我需要一些帮助来发送没有这些转义字符的JSON数据。 多谢了。

  • 问题内容: 例如,采取以下两条路线。 根据文档,可以理解以下内容: 在第一种情况下,对路线的请求将返回404响应。已验证。 在第二种情况下有效,并将重定向到 我想看到的行为是 “逆” 的 情况下,两个 行为。例如将重定向到而不是其他方式。有没有办法定义采取此行为的途径? 根据我的理解,可以在路由上设置有效地获得第一种情况下第二种情况下的相同行为,但是我想做的是获得重定向行为,以始终将其重定向到UR