2009-12-14 4 views
0

Здравствуйте, я хочу, чтобы некоторые Перенаправление сделал файл .htaccess: Некоторые примеры.htaccess Перенаправление

mysite.com/accepted -> mysite.com/index.php?type=accepted 
mysite.com/waiting -> mysite.com/index.php?type=waiting 
mysite.com/cancelled -> mysite.com/index.php?type=cancelled 

&

mysite.com/edit/2 - > mysite.com/admin.php?edit=2 

Т.Д. для всех чисел возможных

mysite.com/login -> mysite.com/admin.php?action=login 
mysite.com/register -> mysite.com/admin.php?action=register 
mysite.com/lostpassword - > mysite.com/admin.php?action=lostpassword 
mysite.com/add - > mysite.com/add.php 

Apprectiate ваша помощь;)

@edit: Это должно быть сделано таким образом, но с маскирующей URLs.

+0

вы уверены, что хотите это направление, а не наоборот, переписывать запросы '/ accept' внутренне' /index.php типа = accept' ? – Gumbo

ответ

0

Если вы хотите попасть в тему самостоятельно, www.modrewrite.com содержит множество отличных ресурсов mod_rewrite с большим количеством примеров.

1

В каком направлении находится перенаправление? Было бы обычным видеть переадресацию от ваших правых сторон к левым сторонам, но не наоборот.

EDIT Я вижу, вы исправили, что, так что мое предположение было правильным:

т.е. вы обычно видите:

RewriteRule ^edit/([0-9]+)$ /admin.php?edit=$1 [L] 

и т.д., чтобы отобразить хороший дружественный URL RESTful стиль в внутренний URL.

0

Если я правильно понимаю вашу правку правильно, вы хотите, чтобы это

<?php 
header('Location: http://mysite.com/'.$_GET['type']); 
?> 
0

Может быть что-то вроде следующего?

RewriteRule ^www.domain.com/([^/]+)/([^/]+)/([^/]+)/([^/]+) /index.php?$1=$2&$3=$4 [NC] 

Обратите внимание, что вам придется разобрать URL (REQUEST_URI) вместо доступа $_GET

0

Поскольку нет структурного рисунка в вашем URL-адресах, которые могут быть использованы для отображения адреса в адресат, вероятно, нужно будет использовать одно правило для каждой группы, как это:?

RewriteRule ^add$ add.php [L] 
RewriteRule ^(login|register|lostpassword)$ admin.php?action=$1 [L] 
RewriteRule ^edit/(\d+)$ admin.php?edit=$1 [L] 
RewriteRule ^(accept|waiting|canceled)$ index.php?type=$1 [L] 
Смежные вопросы