내 재 작성 규칙이 온라인 상태에서 완벽하게 작동하는 이유를 알아내는 데 어려움을 겪고 있지만 내 Mac에서 로컬 복사본을 실행하려고 할 때 실패합니다. . 나는 MAMP O LAMP를 사용하지 않고 아파치와 PHP를 수동으로 설치했다. Apache는 2.2.26이고 php는 5.4.20입니다.Apache mod_rewrite가 변수를 전달할 수 없습니다.
내 htaccess로 파일에 더 규칙이 있습니다,하지만 난에 대해 걱정하는 사람은이 두 가지 있습니다 :
RewriteRule ^category/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/?$ category.php?slug=$1&page=$2 [L]
RewriteRule ^category/([a-zA-Z0-9_-]+)/?$ category.php?slug=$1 [L]
는 기본적으로 변수는 PHP 파일에 전달되지 않습니다. 이 외에도 아래 규칙은 완벽하게 작동합니다! 심지어 내 지역 설정에 나는 "/^카테고리"I로 시작하는 두 가지 규칙을 가지고
RewriteRule ^project/([a-zA-Z0-9_-]+)/?$ project.php?slug=$1 [L]
이 온라인 (우분투) 작동하지만 로컬 실패하는 이유는 모든 단서를 사실 제외한 모든 차이를 볼 수없는 이유는 무엇입니까?
, 그러나 다만 팁을'[A-ZA-Z0-9가 _-] +''로 단축 할 수있다 [\ w -] + '\ w'는 문자, 숫자 및 밑줄과 일치합니다. – zx81