2012-07-24 4 views
2

안녕하세요, 내 사이트에 앵커가 있습니다. 내 사이트를 호출하여 URL은 다음과 같습니다mod_rewrite rewriterule?

http://site.com/page.php 

을 내가 숨기고 싶은 것 인 URL을 표시하는 버튼 URL을 클릭하여 : 내가 발견 한

지금
http://site.com/page.php#1 

내가이를 변경할 수를 mod_rewrite 도구를 사용하여. 내가 성공하지 않고이 규칙을 시도 :

RewriteRule ^(.*)$ ./php#1=php$1 

난 정말 있다면 감사하겠습니다 HTML이나 PHP와 .PHP 뒤에 #1 숨기기로 페이지를 호출하기위한

한다 RewriteEngine

RewriteCond %{REQUEST_URI} ^(.*)\.html$ 
RewriteRule ^.*\.html$ %1.php [L] 

에있다 이 문제를 해결하는 방법에 대해 조언 해 줄 수있는 사람입니다. 고마워.

답변

0

해시 태그는 서버로 전송되지 않으므로 규칙에 따라 해시 태그를 만들 수 없습니다.

1

mod_rewrite를 통해이를 수행 할 수 없습니다.

# 이후의 URL은 서버를 통과하지 못합니다. 당신은 여전히이를 달성하려면

, 당신은 자바 스크립트를 통해 그 일을 조사 할 수 있습니다 :

<a href="#checkthisout" onclick="scrollHere">Check this out</a> 

자바 스크립트 :

function scrollHere() { 
    // Scroll to the anchor 
    //(you may need to look for some script to achieve this) 

    return false; // to prevent URL overwriting 
} 

하나는 이러한 스크립트는이 jQuery.scrollTo입니다.

+0

괜찮에서 인덱스에 대한 감사를 확인합니다. 그것을 실현하는 방법이 있습니까? http://site.com/page와 같이 끝나지 않고 페이지를 호출 할 수 있습니까? 감사합니다 – bonny

+0

자바 스크립트 메서드를 추가했습니다 – uzyn

+0

JS 라이브러리 중 하나 (Jquery, 또는 등) 봐. 그들은 대개 해시 태그 처리에 도움이되는 몇 가지 기능을 제공합니다. – KingCrunch

0

태그를 제거하려면 다음과 같이하십시오.

<a href="javascript:void(0);">Your text</a>. 

그래서 "javascript : void (0);" in 태그의 href 속성과 thats.

+0

그래,이게 앵커로 어떻게 작동해야합니까? – bonny

+0

'javascript : void (0);'대신 'javascript'함수를 호출 할 수 있습니다. 그리고 거기에서 이런 식으로 할 수 있습니다. $ .post (your_url, function (data) { // alert (data); }); –

0

RewriteRule ^$ page.php [L] 
RewriteRule ^([a-z]+)/?([0-9]*)/?$ page.php?index=$2 [L] 

로 다시 쓰기 HTML

<a href='page'>Home Page</a> 

<a href='page/1'>Page 1</a> 
<a href='page/2'>Page 2</a> 
<a href='page/3'>Page 3</a> 

그리고 지금까지, PHP는

<?php 
if (isset($_GET['index'])) 
{ 
     $pageNo =$_GET['index']; 
} 
//based on page NO display contents 

?>