【发布时间】:2017-04-05 16:11:07
【问题描述】:
我目前正在尝试设置重写规则,以设置内部重定向以获得更适合 SEO 的 url 结构。
我要展示:
/find-teacher/primary-school.php
而不是悲伤的样子:
/find-teacher/subject-class-choose.php?school=primary-school
在阅读了一些关于重写规则和重写条件的帖子和教程后,我想出了这个:
在我的 choose-school.php 中,我有一个带有漂亮 url 的链接:
<a href="https://www.example.com/find-teacher/primary-school.php">
Primary School</a>
在我的 .htaccess 中:
RewriteCond %{REQUEST_URI} ^find-teacher/primary-school.php$
RewriteRule ^find-teacher/([a-z-]+)-([0-9]+).php$ /find-teacher/subject-class-choose.php?school=$1 [NC]
现在,如果我做对了,RewriteCond 部分会检查是否请求了以下 url。如果是这样,那么([a-z-]+)-([0-9]+)的部分被替换部分的$1替换(/find-teacher/subject-class-choose.php?school=$1)
问题是如果我点击/find-teacher/primary-school.php,我会被重定向到我的错误页面
【问题讨论】:
-
查询字符串
school_id=1是否表示小学数据? -
@AbhishekGurjar 对不起,我把它改成了
school_id=primary-school
标签: php .htaccess mod-rewrite