更改php搜索网址到使用PHP和mod_rewrite短网址

问题描述:

我的搜索网址很长,如何将此更改为短url使用php & mod_rewrite?更改php搜索网址到使用PHP和mod_rewrite短网址

我的网址:

mydomain.com/gosearch.php?page=1&random=742&title=test&loc1=ANY&loc2=ANY&loc3=ANY&t=ALL&st=3&app=5&image=ALL 

我喜欢:隐藏毕竟页面数(e.x 1)

 mydomain.com/search/1/ 

OR

 mydomain.com/search/1/742/test/ANY/ANY/ANY/ALL/3/5/ALL 

感谢。

+0

通常的方式没有什么SEO不友好有关查询字符串 - 他们只是没有读,但是'搜索/ 1/'没有更好的 – scibuff 2012-04-13 10:31:48

+1

是的,但我的意思是更好的网址外观。短网址更好。我不需要针对搜索引擎进行优化! – BBKing 2012-04-13 10:36:58

你可以做这样的事情

RewriteEngine On 
RewriteRule ^search/(.*)/(.*)/ /gosearch.php?page=$1&random=$2 [L] 

,但它可以得到相当丑陋,将工作只到9个参数

更好地被重定向所有流量要寻找到PHP脚本(gosearch .php),然后在php中解析请求和/或查询字符串并进行适当的处​​理,例如

RewriteCond %{REQUEST_URI} ^/search(.*)$ 
RewriteRule . /gosearch.php [L, QSA] 

,然后在gosearch.php

<?php 

    $paramaters = explode('/', $_SERVER['REQUEST_URI']); 

    print_r($parameters); 
?> 

,并从那里

附:该QSA将添加任何查询字符串/搜索/ 1 /如此的查询参数可以访问通过$_GET/$_REQUEST