최근에 Laravel을 배우기 시작했는데 왜 발생하는지 모르는 문제가 있습니다. 현재 Laravel 프로젝트는 wamp/www/codebright
에 있습니다. localhost/codebright/public
에 액세스하면 Laravel의 환영 페이지가 표시됩니다.Laravel 기본 경로 반환 404
나는 간단한 라우팅 만들 때 :
Route::get('my/page', function()
{
return "Harro world";
});
과 노력 액세스 : localhost/codebright/public/my/page
그것조차 Laravel 오류로, 404 오류로 반환합니다. 또한 localhost/codebright/my/page
에 액세스하려고했습니다.
그러나 CMD php artisan serve
을 입력하고 8000 포트의 서버를 열고 다음 액세스 : localhost:8000/my/page
잘 작동합니다. artisan
명령을 사용하지 않은 첫 번째 방법이 작동하지 않는 이유를 알고 싶습니다.
미리 감사드립니다. 당신이 XAMPP는 위 응답 코멘트 섹션에서 언급 한 문제 중 어느 것도 발생되지 않으며, 설치되어있는 경우
참고
그것은 그렇게 보인다. 기본적으로 XAMPP를 사용하는 경우 오류가 발생하지 않으며 프로그램이 정상적으로 작동합니다.
그래, 그게 문제를 설명해. 어떠한 제안? 무엇을 사용해야합니까? 'php artisan serve' 또는 내'public' 폴더에 직접 액세스하십시오. 내 웹 응용 프로그램이 마침내있을 호스트를 참조하십시오. 내 호스트 회사에 저장되어있을 때 내 웹 사이트에서'php artisan serve'를 실행할 수 없기 때문에'public'에 액세스해야합니다. 디렉토리 맞지? 작동하도록 파일을 수정하려면 어떻게합니까? – kfirba
대다수의 호스팅 제공 업체는 가상 호스트에 대해'mod_rewrite'를 * 및 * AllowOverride All로 설치하여'.htaccess' 파일을 사용할 수있게합니다. 필자가 지적한 바는 이것이 PHP 어플리케이션 전체에 공통적 인 요구 사항이라는 것입니다 (Laravel은 특별한 방법이 아니며 이러한 요구 사항이 미친 것은 아닙니다). 모두 지원합니다. 그리고 새로운 호스트가 필요하다면 . – alexrussell
로컬로 아파치 환경을 올바르게 설정하는 것이 좋겠지 만, 원하는 것을 할 수는 있습니다. (사이트에서 작업 할 때마다 서브 작업을하지 않아도됩니다.) - sudo a2enmod rewrite'을 명령 행에서 실행 한 다음 아파치 설정에서'AllowOverride All'이 설정되어 있는지 확인하십시오. – alexrussell