如何使用htaccess编写seo友好的URL?

时间:2012-08-18 13:36:16

标签: .htaccess seo clean-urls

我想为我的网站创建seo友好的网址。我想从.htaccess文件创建它。关于.htaccess

的知识非常少

我有以下网址 http://www.testsite.com/index.php?dispatch=flowers_search.flowers_search_result&city=Pune&type=Carnation

我需要按如下方式显示网址, http://www.testsite.com/flowers/Pune/Carnation

由于

3 个答案:

答案 0 :(得分:2)

http://www.generateit.net/mod-rewrite/

导致:

RewriteEngine On
RewriteRule ^([^/]*)/([^/]*)$ /index.php?dispatch=flowers_search.flowers_search_result&city=$1&type=$2 [L]

答案 1 :(得分:0)

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule . /index.php?args=%{REQUEST_URI} [L]
</IfModule>

这会将您的查询字符串放入一个可以在页面上用作$_GET['args']的变量。所以你打电话:

http://www.testsite.com/flowers/Pune/Carnation

但你真的在显示页面:

http://www.testsite.com/?args=flowers/Pune/Carnation

然后你可以拿$_GET['args']并按照你想要的那样解析它:

$args = explode('/', $_GET['args']);
array_shift($args); // this take an empty value off of the first item in the array
$dispatch = $args[0];
$city = $args[1];
$type = $args[2];

等等。

答案 2 :(得分:0)

尝试使用以下内容:

RewriteEngine On
RewriteRule ^([^/]*)/([^/]*)/([^/]*)$ /index.php?dispatch=$1&city=$2&type=$3 [L]

我认为这可以帮助您解决问题。