2013-12-17 92 views
1

我将如何修改我的.htaccess发送http://rpgs.biz/rpg-test只是http://rpgs.biz/test快速.htaccess修复?

这里是我当前的.htaccess

Options +FollowSymLinks 
RewriteEngine On 
RewriteBase/

rewriterule ^rpg-([^&]+)$ index.php?name=$1 [L] 

我非常感谢任何帮助,谢谢!

+0

看到这里http://stackoverflow.com/questions/20034636/understanding-of-custom-urls/20034826#20034826这里http://stackoverflow.com/questions/19961123我的帖子/如何对产生-单独页面的URL/19961518#19961518。他们应该帮助给你一些方向。 – m59

回答

1

如果您当前的htaccess正在基于RPG(一些东西),并将“东西”传递到index.php中,您还需要更改。也许是这样的:

Options +FollowSymLinks 
RewriteEngine On 
RewriteBase/

RewriteRule ^rpg-([^/]+)$ /$1 [L,R=301] 

# this is your old rule, modified 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^([^/]+)$ index.php?name=$1 [L] 
+0

这正是我需要的,谢谢! 任何想法如何采取这一步,并创建一个子域,而不是?例如“rpgs.biz/test to test.rpgs.biz” –

+0

@SativaDiva如果你将所有东西映射到'index.php?name =',那么你不需要处理任何'/ test'路径。与'%{HTTP_HOST}'匹配并使用'%1'反向引用匹配 –

+0

我觉得我已经开始掌握它了,但最后一句让我困惑,你可以编辑上面的代码那会是什么样子?我非常感谢迄今为止的帮助,你真的让我的一周! :) –

0

这应该工作:

Redirect 301 /rpg-test http://rpgs.biz/test 

但是如果你需要保留这些文件后/ RPG-测试,如/rpg-test/cart.php或东西,那么你会怎么做:

RewriteRule ^rpg-test/?(.*) http://rpgs.biz/test/$1 [R=301,L] 
0

如果你想要一个简单的重定向,很容易:

Options +FollowSymLinks 
RewriteEngine On 
RewriteBase/

RewriteRule ^rpg-([^&]+)$ /$1 [L,R=301] 
+0

侧边栏:如果它是一个现场网站,您应该始终在其中添加301,以便您不会丢失任何搜索引擎页面排名。 –

+0

非常接近,但我们假设rpg-“test”是从^ rpg - ([^&] +)$生成的,只是删除了rpg,所以它只是^([^&] +)$不起作用。 –

+0

@SativaDiva在这种情况下,您需要更改您的RewriteRule,以便将您从rpg-(无论)重定向到/无论如何。查看更新。 – user4035