lighttpd 重定向/重写

lighttpd 重定向/重写

我正在尝试设置重定向/重写,以便 URL 以 /(尾随斜杠)结尾(为了使 SEO 友好)。

但是,还有其他内部重写,它们不会显示在浏览器地址栏中。我希望能够先在地址栏上添加 / 进行重定向,然后执行这些内部重写。

当我尝试将此规则放在开头时,所有内部重写都会显示在地址栏中:

目前我有重写规则:

`url.rewrite-once = (
^/([0-9_-]+)(?:\?(.*))?" => "/path/www/index.php?cmd=alias&target=$1&$2",
<second condition> => <relative uri>
<third condition> => <relative uri>
 )`

这是我想要添加的规则。

使用的规则:url.redirect = ("^(.*[^/])$" => "$1/")

但这也显示了我的 url 上的内部路径。例如:www.tikejhya.com/path/www/index.php?cmd=alias&target=hellow/world&/

我只想添加一个尾随斜杠(在地址栏中可见),其余所有内容保持不变。

仅供参考:我的模块的顺序也是正确的,我尝试了 guglling(mod_rewrite/fastcgi 和带有重定向的别名)如能提供正确的方向,我将不胜感激。

答案1

好的,我找到了解决方案/解决方法。如前所述,我对所有主机进行了一次重写,并且需要重定向以显示物理路径。

经过一番苦思冥想并阅读了各种可能性之后。

这将帮助你把路径作为记录

url.rewrite-once = (
    "^/show(.*)$"  => "$0"
)

执行下一步

这将帮助您将任何内容重定向到从上面重写一次的保存路径,并将您尾随的 / 推到末尾。

url.redirect = (
    "^(.*[^/])$" => "$1/"
)

相关内容