[php] Laravel 5+ Ubuntu 14.04에서 500 내부 서버 오류 발생

Windows OS에 Laravel을 여러 번 설치했지만 이런 유형의 문제는 발생하지 않았습니다. 이 500 내부 서버는 일반적으로 “mod_rewrite”모듈이 켜져 있지 않을 때 발생합니다.

그러나 Ubuntu 14.04에서는이 문제로 인해 두통이 생깁니다. rewrite_mod를 설치했지만 작동하지 않습니다. ie 안의 모든 폴더와 파일에 대한 액세스 권한을 부여했습니다.

/ var / www / html / laravel_project

여전히 작동하지 않습니다. .htaccess도 원본에서 이것으로 변경되었습니다.

    +FollowSymLinks
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

Laravel 5+에 필요한 모든 확장 기능이 있습니다. 내가하지 않은 것이 남아 있습니까?



답변

마침내 문제를 극복

  • 문제가 된 .htaccess 파일도 index.php도 아니 었습니다. 문제는 파일에 액세스하고 권한을 요구하는 것입니다.

문제를 해결하기 위해 터미널을 통해 다음 명령을 실행했습니다.

sudo chmod -R 755 laravel_blog

그런 다음 laravel이 저장 폴더에 파일을 쓸 수 있도록 아래에 입력하십시오.

chmod -R o+w laravel_blog/storage

이 두 명령이 문제를 해결했습니다.


답변

.env 파일을 만들고 다음을 실행합니다.

php artisan key:generate

이것은 git 프로젝트를 가져온 후에 저에게 효과적이었습니다.

.env 파일을 만들고 키를 생성 한 후 아래 코드를 실행합니다.

php artisan cache:clear
php artisan config:clear


답변

설치 후 아래 명령 실행

sudo chmod 755 -R laravel
chmod -R o+w laravel/storage

여기서 “laravel”은 laravel이 설치된 디렉토리의 이름입니다.


답변

.env파일 이 있는지 확인 하십시오.

대부분이 일은 그런 일을 일으킬 수 있습니다. 파일을 만든 다음에서 모든 항목을 복사 .env.example하여 만든 파일에 붙여넣고 이름을 지정합니다 .env. 또는 jsut 단순히 .env.example파일 이름을 바꾸고 .env실행하십시오.php artisan key:generate


답변

APP_KEY포함 된 .env 파일 이 루트에 있는지 확인하십시오 .

.env에 있어야하는 것은 다른 솔루션에서 명시 적으로 언급되지 않았으며 위의 문장으로 요약 할 것이라고 생각했습니다.

이것은 Laravel을 새로 설치할 때 500 오류를 수정했습니다.

단계 :

  1. 루트 (예를 .env의 파일을 만듭니다 touch .env)
  2. 최소한 한 줄이 포함되어 있는지 확인하십시오. APP_KEY=
  3. 터미널에서 앱 키를 생성합니다. php artisan key:generate

메모:

  • 내 특정 설치에는 .env가 포함되지 않았습니다 (예제 또는 기타)

  • 단순히 .env를 비워두면 작동하지 않습니다.

  • 매개 변수를 포함하지만 APP_KEY매개 변수가없는 .env 는 작동하지 않습니다.

버그? : 터미널에서 앱 키를 생성 할 때 성공한 것으로보고 될 수 있지만 파일에 기존 APP_KEY=줄 이 없으면 실제로 .env에 키가 배치 되지 않습니다 .

참고로 유용한 기준 매개 변수가있는 공식 .env가 있습니다. 필요한 것을 복사하여 붙여 넣으십시오.

https://github.com/laravel/laravel/blob/master/.env.example


답변

비슷한 오류가 발생했습니다. 로그인을 /var/log/apache2/error.log확인하고 UnexpectedValueException을 발견했습니다.

소유자를 프로젝트 디렉토리 아래의 스토리지 폴더의 아파치 사용자로 변경했습니다.

sudo chown -R www-data:www-data ./storage

제 경우에는 apache2 프로세스 소유자가 www-data이므로이를 귀하의 것으로 변경하면 apache2 구성 파일에서 찾을 수 있습니다. 이것이 당신에게 유용하기를 바랍니다.


답변

이 명령으로 수정했습니다.

   rm -rf app/storage/logs/laravel.logs
   chmod -R 777 app/storage,
   php artisan cache:clear,
   php artisan dump-autoload OR composer dump-autoload

서버를 다시 시작하는 것보다 XAMPP 또는 다른 서버를 다시 시작하면 작동합니다.