2012-08-06 48 views
0

我在我的网站有以下类型的链接已经一个页面:modrewrite不工作

http://www.qblza.com.br/anuncio_detalhes.php?ida=231&title=capa-para-iphone-4-game-boy

我想重写网址的格式如下:

http://www.qblza.com.br/231/title=capa-para-iphone-4-game-boy

我试过成千上万的modrewrite发电机,但没有人在我的网站上工作。 最后一个生成以下代码:

RewriteRule ^(.*)$ http://www.gobig.com.br/$1 [R=301,L] 

任何人都可以帮助我吗?

+0

是否启用了重写模块? – kevin628 2012-08-06 15:13:06

回答

1

这是你所需要的基本的htaccess:

RewriteEngine on 
RewriteBase/

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 

RewriteRule ^([0-9]+)/([A-Za-z0-9-]+)/?$ /anuncio_detalhes.php?ida=$1&title=$2 [L] 
  • 你有两个参数:http://www.qblza.com.br/[param1]/[param2]
  • 他们要求两者
  • [param1]只接受数(一个或多个) :([0-9]+)
  • [param2]将接受数字,字母和-(一个或多个):([A-Za-z0-9-]+)
  • 最终/是可选

注:请记住一个htaccess文件不会幻化旧网址。您需要使用http://www.qblza.com.br/[param1]/[param2]模式,并且htaccess会将这些“虚假”网址重定向到真实网址。

+0

嗨samsamX,谢谢你的所有解释。我现在要试一试!谢谢!!! – fackz 2012-08-06 15:26:46

+0

我刚刚更新了我的.htacsess,但现在它不工作...当我点击链接时,我得到一个404页面没有找到... – fackz 2012-08-06 15:37:35

+0

对于调试,将'[L]'标签更改为'[L,R = 301]'标记,这将重写浏览器中的网址,看看它是否是您真正想要的网址(请复制/粘贴原始网址和结果网址) – zessx 2012-08-06 15:40:36