2012-04-28 2 views
0

htaccess 코드에 문제가 있습니다. 왜이 htaccess 코드가 제대로 동작하지 않습니까?

내가 읽혀질 수있는 페이지를 example.com/user/register/로드하려고

내가 잘 작동 example.com/user/register 액세서 때 profile.php

이며 register.php

읽고

example.com/user/register/를 사용하도록 htaccess 코드를 편집하려면 어떻게해야합니까?

RewriteRule ^user/register?$ register.php [L] 
RewriteRule ^user/register?$ /user/register/ [R=301,L] 

RewriteRule ^user/?$ user.php [L] 
RewriteRule ^user?$ /user/ [R=301,L] 

RewriteRule ^user/(\d+)/$ profile.php?id=$1 [L] 
RewriteRule ^user/(\d+)?$ /user/$1/ [R=301,L] 

RewriteRule ^user/([^/]+)/$ profile.php?username=$1 [L] 
RewriteRule ^user/([^/]+)?$ /user/$1/ [R=301,L] 
+0

그것이 RewriteRule의^사용자/등록/$해야한다 : 당신은 끝에 슬래시가 귀하의 URL을 전혀하지 않으려는 f를, 당신은 오히려 각 페이지에 대한 리디렉션보다 당신의 .htaccess의 상단에 일반 리디렉션을 사용할 수 있습니다 register.php [L] register.php에/user/register /를 지원하려면 – mask8

답변

1

/user/register/또는/user/register를 사용하고 있습니까?

현재 재 작성된 모습에서/user/register /를 다시 작성하여 /register.php를 가리킨 다음/user/register /로 리디렉션합니다. 리디렉션은 결코 [L]으로 인해 발생하지 않지만 이전 규칙. 당신이/사용자/등록 사용하려는 경우

/I 노력 제안 :

RewriteRule ^user/register/$ /register.php [L] 
RewriteRule ^user/register$  /user/register/ [R=301,L] 

당신이/사용자가 원하는 경우/당신이 필요로한다 등록 :

RewriteRule ^user/register$  /register.php [L] 
RewriteRule ^user/register/$ /user/register [R=301,L] 

을 다른 방법으로, '돈 경우 URL에 후행 슬래시가 있는지 여부는 다음과 같이 처리됩니다.

RewriteRule ^user/register/?& /register.php [L] 

?

RewriteRule ^(.*)/$ /$1 [R=301,L] 
관련 문제