在AWS中部署laravel应用时出现500服务器错误

时间:2020-01-12 12:46:27

标签: laravel server

我已尝试解决此错误已有2周,但尚未解决。

我已经使用了与此问题相关的所有答案,但没有找到适合我的问题的解决方案:(

使用的命令

chmod -R o+w laravel_blog/storage
sudo chmod -R 755 laravel_blog
php artisan key:generate
php artisan cache:clear 
php artisan config:clear
sudo chown -R www-data:www-data ./storage

请帮助我||

2 个答案:

答案 0 :(得分:0)

  1. 在laravel根文件夹中检入.env文件:

    a)检查是否有.env个文件,如果没有,则将.env.example复制粘贴到.env

    b)APP_DEBUG = true(在部署到服务器时,检查您的应用程序后-更改为false)

    c)APP_KEY =(必须为空)

    d)保存.env文件

    e)运行php artisan key:generate

    f)打开您的网站(服务器返回所有其他错误)

  2. 运行composer install

答案 1 :(得分:0)

这是我在 Ubuntu 20.4 上的 apache2 解决方案

我假设您已经完成了 phwt & Taras 中的步骤。这些仍然是必要的。

你需要改变:

  • ServerName 到您的 IP 地址或域
  • DocumentRoot 指向公共 Laravel 目录的路径
  • RewriteCond %{SERVER_NAME} = 到您的 IP 地址或域

文件:/etc/apache2/sites-available/laravel.conf

<VirtualHost *:80>
   ServerName www.mylaravelproject.com
   ServerAdmin webmaster@localhost
   DocumentRoot /var/www/laravel/public/

   <Directory /var/www/laravel/public/>
       AllowOverride All
   </Directory>
   ErrorLog ${APACHE_LOG_DIR}/error.log
   CustomLog ${APACHE_LOG_DIR}/access.log combined
RewriteEngine on
RewriteCond %{SERVER_NAME} =www.mylaravelproject.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

保存此运行后:

sudo a2ensite laravel.conf
sudo systemctl restart apache2

(可选,推荐)如果您想使用 SSL 证书,请执行以下操作: sudo certbot 并按照说明操作