douxiajia6720 2015-06-05 09:50
浏览 89
已采纳

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

  • I have an website on my localserver (with Apace) and i want to rewrite urls.
  • I have .htaccess file.

  • I have RewriteEngine ON (on Apache)

index.php

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

When someone press on the title of post will be redirected to post.php/post=postID

I want to rewrite this url (localhost/post.php/post=postID) to something like that:

/localhost/post/postTitle or /localhost/post/postID

Preferably the first one.

How can I do that?

.htaccess

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

Nothing happens, when I press on the link, the url is the same (post.php/post=postID).

  • 写回答

1条回答 默认 最新

  • duanbeng8872 2015-06-05 10:21
    关注

    It is a manual process to update your links. So, you'll want to change:

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

    to:

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

    Update: As a note, people like to use the shorthand for just echo'ing content, E.g.

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

    So it would become:

    <a href="posts/<?=$row['postID']?>">
        <h4><?=$row['postTitle']?></h4>
    </a>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥50 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?