htaccess를 사용하여 단일 페이지 리디렉션을 설정하는 데 문제가 있습니다. 그런 다음Htaccess 단일 페이지 리디렉션 문제
RewriteCond %{SCRIPT_FILENAME} !-s
RewriteRule (.*) index.php?path=$1 [QSA,L]
리디렉션 예를 들어, 한 세트 : 현재 내가 가진 htaccess로 파일이
Redirect 301 /oldpage.htm http://www.mydomain.com/new-page
하지만 난 데 문제는 내가 이전 URL의 브라우저 종류에 갈 때, 나는 부착 된 매개 변수, 예를 들면와 URL로 리디렉션이다 :
에 "http : // www가 .mydomain.com/new-page? path = oldpage.htm "
일부 리다이렉션의 경우 어쨌든 작동하는 것처럼 보이지만 일부는 404 오류가 발생합니다. 또한 RewriteCond와 Rewrite Rule을 사용하여 내가 할 수있는 페이지에 대한 모든 리디렉션을보다 일반적인 catch로 작성하려고 시도했으며, 동일한 문제가 있습니다.
다른 리디렉션이 리디렉션과 간섭해야한다고 생각합니다. 위의 규칙은 내가 볼 수있는 유일한 방법이지만 위와 같은 경우에는 URL 리디렉션을하지 말아야합니다. 올라가고있는
"http://www.mydomain.com/index.php?path=oldpage.htm"
사람이 매개 변수가 URL에 추가되고 왜 나는이 그렇게 일어나고 중지하는 방법을 설명 할 수 있습니다 내 리디렉션이 작동합니까?
건배!
고맙습니다 @ 존 린 - 그게 효과가있는 것 같습니다. 나는 원래 사이트 작성자가 아니므로, 두 번째 다시 쓰기 규칙 (index.php? path = $ 1)이 수행되고 있어야하고 필요한 이유를 실제로 해결하지 못했습니다. –
@SunChild 어떤 종류의 CMS 나 프레임 워크에 대해 "가상 요청"을 라우팅하는 것처럼 보입니다. 가상이라는 말은'http : // your.domain.com/some/path/page-name'과 같은 요청,'/ some /'또는'/ some/path' 폴더가 없으므로 URI'/some/path/page-name'는'index-php'로 라우팅되어'page-name'에 내용을 제공하는 방법을 알게됩니다. 'some/path'하지만 범주 일 수 있습니다. –