.htaccess页面网址出现问题

时间:2015-08-22 10:22:19

标签: php mysql .htaccess

我创建了两个页面来访问我网站上的帖子,这两个页面链接分别显示在标题中的信息。来自section_category.php页面的标题(bussiness ..)链接和来自city.php的城市。在这里,我为section_category.php编写htaccess代码,以显示像这样的页面URL

http://campaignforindia.com/section_category.php?id=4
http://campaignforindia.com/4

我工作得很好但是city.php不能正常工作

的.htaccess

RewriteEngine on
RewriteRule ^([0-9]+) category.php?menu_id=$1 [NC]
RewriteRule ^([0-9]+)/([a-zA-Z0-9_-]+)$ city_category.php?city_id=$1&city_name=$2 [NC]
RewriteRule ^([a-zA-Z0-9_-]+)$ post.php?nurl=$1 [NC]

我想显示像这样的第二个链接

http://campaignforindia.com/city_category?city_id=15&city_name=Delhi
http://campaignforindia.com/15/delhi

的header.php 此页面用于导航两个类别页面(city.php,section_category.php)

<ul class="the-menu">
                        <li><a href="index.php">Home</a></li>
                        <?php while($mrow = mysql_fetch_array($qry1)){  ?>
                        <?php  //$mname = strtolower($mrow['menu_name']); ?>
                        <li><a href="<?php echo $mrow['menu_id']; ?>"><?php echo $mrow['menu_name']; ?></a></li>
                        <?php } ?>

                                                </ul>

                <!-- BEGIN .wrapper -->
                <div class="wrapper">

                    <ul>
                    <?php
                    while($crow = mysql_fetch_array($qry))
                    {

                    ?>

                    <li><a href="city_category?city_id=<?php echo $crow['city_id']; ?>&city_name=<?php echo $crow['city_name']; ?>"><?php echo $crow['city_name']; ?></a></li> 

                        <?php } ?>
                    </ul>

                <!-- END .wrapper -->
                </div>

1 个答案:

答案 0 :(得分:1)

您的第一条规则的正则表达式符合所有情况。 解决方案:

  • 切换两个规则的顺序,或
  • 为第一场比赛(例如^([0-9]+)$
  • 写一个更严格的规则