【问题标题】:Url rewrite on Apache在 Apache 上重写 URL
【发布时间】:2016-12-20 18:37:55
【问题描述】:

我的 URL 重写存在一些问题。

我只想更改我的 URL 范例的身份: http://www.siteadress.com/index.php?//something/something 类似的东西: http://www.siteadress.com/something/something

所以我添加了这一行: RewriteRule (.?)index.php\?/(.*) /$1$2 但这并没有按我的计划工作。 只需从我的 URL 中删除 1 /。

但在我的意思中,我要求 (.?) 任何可选的 index.php\?/ index.php?// (.*) 和任何东西,不是吗?

感谢您的帮助。

【问题讨论】:

    标签: apache .htaccess mod-rewrite url-rewriting


    【解决方案1】:

    看起来你的规则是相反的。第一个参数应该是您要匹配的模式,第二个参数是您想要替换的模式。在您的情况下,您正在寻找“/something/something”并希望将其重写为“/index.php?//something/something”。所以你需要这样的东西:

    RewriteRule ^/?(.*) /index.php?//$1
    

    这将在路径中的第一个 / 之后获取任何内容并将其附加到 /index.php?//.

    【讨论】:

    • 感谢您的重播。我只是觉得我误解了自己,我不想在 /index.php 中添加一些东西?//,我想“删除它”以获得“好看的 URL”。我测试了你发送的内容,对我来说,就像你说的那样附加到 /index.php?// 但是如果我删除我所有的 URL 重写,我已经有了这样的 url:somthing/index.php?//something 这就是为什么我想添加一个删除这个的规则。谢谢。
    猜你喜欢
    • 2010-10-30
    • 2012-02-27
    • 1970-01-01
    • 2011-03-17
    • 2017-05-17
    • 2018-02-20
    • 2014-05-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多