2015-10-20 68 views
1

我需要从如何改写单页的URL在.htaccess

http://www.domainname.com/index.php?route=payment/axis/callback 

我想这两个从堆栈溢出仅改写1特定的URL ,我不知道为什么它不工作

一日一:

RewriteRule  ^([A-Za-z0-9-]+)/?$ index.php?route=payment/axis/callback [NC,L]  

第二届一个:

RewriteRule ^index.php?route=payment/axis/callback payment/axis/callback [L] 

回答

1

试试这个:

4)重写yoursite.com/user.php?username=xyz到yoursite.com/xyz

你检查若比邻。 com.If你在浏览器中输入http://zorpia.com/roshanbh233你可以在那里看到我的个人资料。如果您想要执行相同类型的重定向,例如http://yoursite.com/xyzhttp://yoursite.com/user.php?username=xyz,则可以将以下代码添加到.htaccess文件。

RewriteEngine On RewriteRule ^([a-zA-Z0-9_-]+)$ user.php?username=$1 RewriteRule ^([a-zA-Z0-9_-]+)/$ user.php?username=$1

看到完整的页面here.

希望它能帮助!

+1

请检查我的问题我尝试从http://www.domainname.com/index.php?route=payment/axis/callback到http://www.domainname.com/payment/axis/callback –

0

我不会使用.htaccessRewriteRule,因为它经常遇到问题。 简单的解决方法(用PHP重定向):

<?php 
if($_GET['route'] == 'payment/axis/callback') { 
    header("Location: http://www.domainname.com/payment/axis/callback"); 
} 
?> 
0

您可以使用h0ch5tr4355的解决办法,或者你可以试试这个:

RewriteEngine on 
RewriteCond %{QUERY_STRING} ^route=payment/axis/callback$ 
RewriteCond %{SCRIPT_FILENAME} index.php 
RewriteRule (.*) /payment/axis/callback [NC,QSD] 

如果你不是一个重写希望它重定向到新的url可以将R=301添加到RewriteRule的标志中。

+0

我会感激你,如果你指导我,我可以添加两个重写条件是一个.htaccess文件。我的htaccess文件正常工作,但我需要在同一个文件中重写。我想将此网址(http://www.example.ae/index.php?route=common/thispage)改写为(http://www.example.ae/thispage) –

+0

@ Mr.Developer答案确实如此。如果一个RewriteRule前面有多个RewriteCond行,则所有行都必须匹配才能使RewriteRule处于活动状态(除非使用[OR]标志)。当然,你将不得不改变参数和URL来满足你的需求。 –