【问题标题】:Problems with mod_rewrite dynamic URLmod_rewrite 动态 URL 的问题
【发布时间】:2014-03-29 02:12:26
【问题描述】:

我在自己的域上创建了自己的博客,为了显示文章,我使用动态 URL 在页面上显示文章内容。

现在的示例: http://www.blog.madetocreate.nl/artikel.php?id=47

现在我已经搜索了几天的 mod_rewrite 方法,但我尝试的一切都失败了。服务提供商告诉我 mod_rewrite 已启用,我只需使用 .htaccess 文件访问它。

我现在拥有的文件包含以下代码:

RewriteEngine on
RewriteRule ^artikel/([^/]+)/?$ artikel.php?id=$1 [L]

我想让网址看起来像这样:

http://www.blog.madetocreate.nl/artikel/47/title-of-the-post-here/

但到目前为止,我什至无法获得第一个 "artikel/47/"

知道我做错了什么吗?

谢谢!

【问题讨论】:

    标签: php apache .htaccess url mod-rewrite


    【解决方案1】:

    正则表达式应如下所示:

    ^artikel/([0-9]+)/([\w-]*)$
    

    这给了你:

    RewriteEngine on
    RewriteRule ^artikel/([0-9]+)/([\w-]*)$ artikel.php?id=$1 [L]
    

    ([0-9]+) 匹配 1 个或多个数字

    ([\w-]*)匹配0个或多个单词字符和-,这意味着你可以同时拥有artikel/47/artikel/47/title-of-the-post-here

    【讨论】:

    • 嗯,关键是我刚刚上传了这个新代码,当我打开 blog.madetocreate.nl/artikel.php?id=47 时,url 没有出现 artikel/47 /帖子标题/。我是完全不了解 mod_rewrite 还是什么?
    • RewriteRule 不会重定向你,它只是告诉 apache 将地址 artikel/47/titel-of-post 解释为 artikel.php?id=47。你应该看看这篇解释这两个概念之间区别的帖子:stackoverflow.com/questions/11709634/…
    猜你喜欢
    • 2016-03-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-22
    • 2011-03-09
    • 2021-04-27
    • 1970-01-01
    相关资源
    最近更新 更多