URL重写不起作用 - Apache,本地服务器

时间:2015-06-05 09:50:14

标签: php apache .htaccess url

  • 我的本地服务器上有一个网站(和Apace一起),我想 重写网址。
  • 我有.htaccess文件。

  • 我有RewriteEngine ON(在Apache上)

的index.php

<a href="post.php?post=<?php echo $row['postID'];?>"><h4><?php echo $row['postTitle']; ?></h4></a>

当有人按帖子标题时会被重定向到post.php / post = postID

我想将此url(localhost / post.php / post = postID)重写为:

/ localhost / post / postTitle或/ localhost / post / postID

最好是第一个。

我该怎么做?

的.htaccess

RewriteEngine On
RewriteRule    ^posts/([0-9]+)/?$    post.php?post=$1    [NC,L]

没有任何反应,当我按下链接时,网址是相同的(post.php / post = postID)。

1 个答案:

答案 0 :(得分:0)

更新链接是一个手动过程。所以,你想要改变:

<a href="post.php?post=<?php echo $row['postID'];?>">
    <h4><?php echo $row['postTitle']; ?></h4>
</a>

为:

<a href="posts/<?php echo $row['postID'];?>">
    <h4><?php echo $row['postTitle']; ?></h4>
</a>

更新:作为备注,人们喜欢使用简写来表示echo内容,例如

<?=$row['postID']?>

所以它会变成:

<a href="posts/<?=$row['postID']?>">
    <h4><?=$row['postTitle']?></h4>
</a>