문제

Kohana 프로젝트를 Godaddy 서버에 업로드 한 후 표준 .htaccess 파일이 깨끗한 URL을 제공하기에 충분히 작동하지 않는 것으로 나타났습니다. 약간의지도 후, 나는 다음과 같은 규칙으로 끝났다.

RewriteRule .* index.php?kohana_uri=$0 [PT,L]

이로 인해 멋진 궤양이 다시 작동했지만 오늘은 내부 검색 엔진을 깨뜨릴 수 있다는 것을 알게되었습니다.

/search?terms=php

스크립트에서는 값을 찾지 못합니다. 그것들은 수정 된 재 작문이 없지만 다시 쓰레기를 사용하는 GodAddy 서버에 있지 않은 내 개발 서버에 있습니다.

규칙이 $ _get에서 읽을 수있는 스크립트 기능을 중단하고 있다고 가정 할 때, 그렇다면 어떻게해야합니까?

도움이 되었습니까?

해결책

다시 작성자에 QSA를 사용하는 것일 수 있습니다.

RewriteRule .* index.php?kohana_uri=$0 [PT,QSA,L]

참조 mod_rewrite 매뉴얼 (인용) :

'QSappend | QSA'(쿼리 문자열 추가)

이 플래그는 재 작성 엔진이 대체 문자열의 쿼리 문자열 부분을 대체하는 대신 기존 문자열에 추가하도록 강요합니다. 다시 쓰기 규칙을 통해 쿼리 문자열에 더 많은 데이터를 추가하려는 경우이를 사용하십시오.

도움이 될 수 있습니다 (특정 사례에서는 테스트되지 않았지만 얼마 전에이 문제에 대해이 문제를 사용했음을 기억합니다).

다른 팁

추가 할 수 있다고 생각합니다. RewriteCond $1 !^(search), 또는 그러한 변형.

표준 연습을 사용하고 쿼리 문자열없이 사용하려면 다음 단계를 따라야하며 LocalHost와 마찬가지로 작동하며 재 작성 규칙을 변경할 필요가 없습니다.

GodAddy 계정 파일 관리자 -> webroot 디렉토리 -> php5.ini가 존재하지 않으면 다음 줄을 배치하십시오 : cgi.fix_pathinfo = 1

이제 웹 프로세스를 다시 시작해야합니다.

1.) 계정 관리자에게 로그인하십시오. 2.) 웹 호스팅을 클릭합니다. 3.) 사용하려는 호스팅 계정 옆에서 시작을 클릭하십시오. 4.) 통계 및 모니터 섹션에서 시스템 프로세스를 클릭하십시오. 5.) 왼쪽의 목록에서 보려는 프로세스를 클릭하거나 모든 프로세스를 클릭하여 모든 프로세스를 한 번에보십시오. 6.) 프로세스를 끝내려면 도구 모음의 해당 엔드 버튼을 클릭하십시오.

이제 uri_protocol을 자동으로 사용할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top