최근 프로젝트를 윈도우에서 리눅스로 마이그레이션해야 하는데 로컬에서 실행하면 문제가 없습니다. 그런데 리눅스에서 테스트할 때 백엔드 시스템(admin.php)에 들어가면 오류 메시지가 너무 많이 나옵니다. 웹사이트로 리디렉션
로드 프로세스는 항목 파일로 admin.php입니다. 인덱스 컨트롤러는 baseAction을 상속합니다.
<code>class IndexAction extends BaseAction { public function index() { //indexAction.class.php } } class BaseAction extends Action { //BaseAction.class.php public function _initialize() { if (!$this->isLogin()) { $this->redirect('Home/Login/index'); } }</code>
로그인 컨트롤러 코드
<code>class LoginAction extends Action { /** * 显示登录页面 */ public function index() { if (!empty($_SESSION[C('SESSION_ADMIN_NAME')]) && !empty($_SESSION[C('SESSION_ADMIN_ID')]) && strtolower(ACTION_NAME) != 'logout') { $this->redirect("Index/index"); } $this->display('login'); }</code>
이론적으로 loginAction은 baseAction을 상속하지 않으므로 리디렉션되지 않습니다. 그러나 웹사이트에서는 여전히 리디렉션이 너무 많다는 메시지를 표시하지만 프런트엔드의 index.php 아래 페이지는 모두 정상입니다. 백그라운드 시스템 리디렉션우울함
디렉토리 구조는 다음과 같습니다.
pathinfo 모드를 수정해 보았으나, nginx의 rewrite 모드를 살펴보니 작동하지 않습니다