2011-12-20 2 views
0

나는 웹 사이트에 작업 및 재 작성 일부 URL을 할 필요가있어

그것은 $_GET URL ReWriting 매우 유사하지만 난 그게에서 기본적으로

를 작동 할 수없는 것 내 index.php 나는 그 방법을 내용을 test.com/?page=test1 표시 website_folder/content/test1.php

<?php 
$page = basename($_GET['page']).".php"; 
if(file_exists("content/".$page)) 
    include("header.php"); 
else 
    include("header_index.php"); 
?> 

<div id="main"> 
<!-- container --> 
    <?php 
    if (file_exists("content/".$page)) 
     echo '<div id="container">'; 
    else 
     echo '<div id="container" class="index_container">'; 
    ?> 
     <!-- content --> 
      <div id="content"> 
       <?php 
        if(file_exists("content/".$page)) 
         include("content/".$page); 
        else 
         include("content/index_page.php"); 
        include("./content/right_menu.php"); 
       ?> 
      </div> 
     <!-- content --> 
    </div> 
<!-- /container --> 
</div> 

<?php 
    include("./footer.php"); 
?> 

를 표시 할 $_GET 변수를 사용하고 있습니다 재 작성 규칙
RewriteRule (.*)$ ?page=$1
을 시도 : <a href="?page=testX">Test X</a>

편집 감사합니다 같은

는 난 할 노력하고있어 test.com/test1

내 페이지에있는 모든 링크를 그것을 만들 수 있습니다 것입니다 RewriteRule ./([a-zA-Z]+)$ ./index.php?page=$1
RewriteRule /([a-zA-Z0-9]) /?page=$1
RewriteRule ^subdomain.test.com/subfolder/(.+) subdomain.test.com/subfolder/index.html?page=$1 [NC]
RewriteRule (.+)$ index.php?page=$1

+0

'test.com/? page = test1' 대신'test.com/test1'을 얻기 위해'.htaccess'에 무엇을 써야합니까? – rxdazn

+0

예. mod_rewrite에 대한 거의 모든 단일 튜토리얼에서 설명하는 것과 비슷한 가장 간단한 것 중 하나와 비슷하지만 내 경우에는 효과가없는 것 같습니다. (예, 내 호스트가 URL 재 작성을 허용하고 내 '.htaccess'가 고려 됨) – rxdazn

+0

편집 됨. 플래그는 대부분 [NC]'였습니다. – rxdazn

답변

2

이이해야 할이 :

RewriteRule ^subdomain.test.com/subfolder/(.+) subdomain.test.com/subfolder/index.html?page=$1 [NC] 

그것은 나를 위해 작동합니다!

(.. 들이게 참고 당신은에 .php로 변경해야 할 수도 있습니다 .ASP 요법)

또한 필요합니다 이전 문 위

Options +FollowSymLinks 
RewriteEngine on 

.

+0

여기서는 작동하지 않는 것 같습니다 ... index는 실제로 subdomain.test.com/subfolder/index에 있지만 아무 것도 변경해서는 안됩니다. 'RewriteEngine on' 이미있었습니다. 'RewriteRule^subdomain.test. com/subfolder/(.+) subdomain.test.com/subfolder/?page=$1 [NC]'did not work – rxdazn

+0

답변을 업데이트했습니다. 그래도 작동하지 않으면 시도 할 때 일어나는 일에 대해 자세히 설명해 줄 수 있습니까? – ACarter

+0

이전에 시도했으나 작동하지 않습니다. 'sub.test.com/subfolder/contact'를 요청하면 404가되지만'sub.test.com/subfolder/? page = contact'는'website_folder/content/contact.php'를 올바르게 표시합니다. URL의 모든 부분이 여전히'sub.test.com/sub/? page = pagename'으로 표시되고 있습니다. – rxdazn