2012-10-28 5 views
0

나는 항상이모드 재 작성 htaccess로 디스플레이 링크

http://domain.com/contact-us.html 

처럼 내 페이지에 링크를 넣어 다음에 이것을 사용했다 올바르게

브라우저에서 링크를 표시하는 모드 재 작성과 문제가 있어요 나는의 index.php 페이지에서 시간 변수를 요청

Options FollowSymLinks 
RewriteEngine On 
RewriteRule ^([^.]+)\.html$ http://domain.com/index.php?h=$1 [L] 

내 htaccess로 파일을 얻을 슬러그를 사용하는 "접촉 우리는"

$h = htmlspecialchars($_REQUEST['h'], ENT_QUOTES, 'UTF-8', false); 
$h = preg_replace('/[^-a-z0-9_]/i','',$h); 

이 항상 잘 작동하고 아직도 내가 1 일에 사이트를로드

브라우저에서 domain.com/contact-us.html을 보여줍니다 대신 domain.com/contact-us 보는 .html 브라우저에 domain.com? hcontact-us가 나타납니다. 링크가 올바르게 표시되지 않는 것을 제외하고는 모두 작동합니다.

답변

0

알 수 있지만 향후 도움이 될 것입니다. 각 테스트마다 캐시를 ​​지우십시오.

Options FollowSymLinks 
RewriteEngine On 
RewriteRule ^([^.]+)\.html$ /index.php?h=$1 [L] 

도메인을 포함하지 마십시오. 제 경우에는 웹 사이트가 public_html 폴더의 한 단계 위로 올라와 있으므로 도메인을 포함시켜야한다고 생각했습니다.

는 최종 코드

RewriteBase/

훌륭한 작품 추가

Options FollowSymLinks 
RewriteEngine On 
RewriteBase/
Options FollowSymLinks 
RewriteEngine On 
RewriteRule ^([^.]+)\.html$ /index.php?h=$1 [L]