문제

나는 내가 작업중 인 앱에 대해 매우 간단한 편안한 테스트 장비를 구축하려고 노력하고 있습니다. .htaccess를 사용하여 URL을 컨트롤러 스크립트로 리디렉션하여 논리를 처리하기 위해 URL을 구문 분석 할 것입니다.

리디렉션이 작동하지만 문제는 Post/Put/Delete를 수행하면 FireBug가 테스트 리그에 올바르게 이동하는 요청을 보여 주지만 301 리디렉션 응답을받은 다음 두 번째 GET 응답이 표시된다는 것입니다.

브라우저에 301을 보내지 않고 URL 리디렉션에 htaccess를 어떻게 사용할 수 있습니까?

이것은 내가 지금 사용하고있는 .htaccess입니다.

RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1
도움이 되었습니까?

해결책

다음과 같은 것을 시도하십시오.

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

파일이 요청되지 않는 한 (예 : 이미지 또는 CSS 파일)가 없으면 리디렉션됩니다. 나는이 규칙을 자주 사용하며 301을 겪지 않았습니다.

PHP 스크립트가 301에 대한 응답을 변경하지 않는지 확인하십시오.

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