. Htaccess yönlendirme

5 Cevap php

Hello I want to have some redirection made by .htaccess file: Some examples

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

VB. olası tüm sayılar için

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

Yardımına Apprectiate ;)

@ Edit: Bu ancak maskeleme adresler ile bu şekilde yapılmalıdır.

5 Cevap

Yol etrafında yönlendirme hangisi? Bu sol-taraf için verilen el-sağ taraftan yönlendirmeleri görmek için ortak olabilir, ama başka bir yol etrafında olacaktır.

EDIT Seni çok benim varsayım doğru idi, o sabit görüyorum:

yani normalde görmek istiyorum:

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

vb, iç URL içine güzel, samimi sığınakta tarzı URL haritasına.

Eğer konu içine kendiniz almak istiyorsanız, www.modrewrite.com örnekler sürü büyük mod_rewrite kaynakların bir dizi ev sahipliği yapıyor.

Ben doğru düzenlemek anlamak Eğer bu istiyorum

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

Hedeflere URL'leri eşleştirmek için kullanılabilir URL'lerinizdeki yapısal model olduğundan, muhtemelen bu gibi her grup için bir kural kullanmak gerekir:

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]

Belki aşağıdaki gibi bir şey?

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

Yerine ulaşma URL'sini (REQUEST_URI) ayrıştırmak zorunda olduğunu unutmayın $_GET