如何使用.htaccess和mod_rewrite创建动态页面

时间:2011-07-27 10:01:25

标签: php .htaccess mod-rewrite

我想知道我需要在.htaccess中添加以下内容。

当人们拨打我的某个页面时,例如:

http://www.mydomain.com/cooks/New-York_NY.html
http://www.mydomain.com/cooks/Plantation_FL.html

它将从名为cookscities.php的文件中动态创建这些页面。

然后页面cookscities.php将从城市和州的网址中提取值并将其放在页面上。

因此,对于示例请求的页面:http www.mydomain.com/cooks/New-York_NY.html我的页面cookscities.php会在页面内容城市值上插入URL的值,但如果有的话,则删除“ - ”,并将状态设置为2个字母。

所以页面标题会说:

Find Cooks in New York NY

2 个答案:

答案 0 :(得分:1)

在.htaccess中添加:

RewriteEngine on
RewriteRule /cooks/(.*)$ http://mydomain.com/cookscities.php?val=$1 [L]

这匹配任何以/ cooks /开头的URL并调用cookscities.php,将“/ cooks /”之后的部分作为GET变量val传入。

在cookscities.php中你可以:

<?php
list($city, $state) = explode('_', $_GET['val']);
$city = str_replace('-', ' ', $city);

echo "Find Cooks in $city $state";
?>

答案 1 :(得分:0)

通常使用mod_rewrite:http://www.sitepoint.com/guide-url-rewriting/

来完成