thinkphp에서는 "/ThinkPHP/Conf/convention.php"의 매개변수를 수정하여 URL의 대소문자를 구분하지 않도록 할 수 있습니다. 프로젝트 구성에 "URL_CASE_INSENSITIVE=true"만 추가하면 됩니다. URL을 대소문자를 구분하지 않아도 명명 규칙은 변경되지 않습니다.
이 기사의 운영 환경: linux7.3 시스템, ThinkPHP5 버전, Dell G3 컴퓨터.
thinkphp는 URL을 사용하여 작업 메서드를 실행하는 모듈 클래스를 찾습니다. 이는 URL의 대소문자에 따른 문제입니다. Linux에서는 URL의 대소문자를 구분합니다. 즉, Linux 환경의 PHP 가상 호스트는 다른 운영 체제(예: Windows 시스템), thinkphp의 URL은 대소문자를 구분합니다.
요구 방식의 이러한 모순을 피하기 위해 thinkphp의 URL을 대소문자 구분 없이 일반 cms 시스템의 URL과 동일하게 구성하는 방법은 무엇입니까?
예를 들어 Linux 환경에서는 다음 URL에 액세스하는 것이 일반적입니다.
http://www.php.cn/index.php/User/add
그러나 이렇게
http://www.php.cn/index.php/user/add
에 접속하면, userAction 대신 UserAction을 정의하기 때문에, 대소문자를 구별하는 환경에서는 에러가 발생하게 되어 사용자가 거부하게 됩니다. 경험상. 사실, 이 문제를 해결하는 것은 매우 간단합니다. 시스템은 구성 항목을 통해 정의되는 솔루션을 제공하며 매우 중요합니다.
구성 수정 필요: /ThinkPHP/Conf/convention.php 매개변수:프로젝트 구성에 다음만 추가하면 됩니다:
‘URL_CASE_INSENSITIVE’=>true
이 방법으로 URL은 대소문자를 구분하지 않을 수 있습니다. 여기서 주의할 점은 이러한 유형의 모듈 클래스 UserTypeAction을 정의하는 경우 모듈 이름의 처음 두 글자가 대문자로 표시되고 밑줄을 추가하여 액세스된다는 것입니다.
http://www.51php.com/index.php/user_type/add
URL은 대소문자를 구분하지 않습니다. 시스템의 명명 규칙을 변경하지 마십시오. 시스템의 명명 규칙을 준수해야만 URL에서 대소문자를 올바르게 구분할 수 있습니다.
추천 학습: "
PHP 비디오 튜토리얼위 내용은 thinkphp의 URL은 왜 대소문자를 구분하지 않나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!