【问题标题】:Fresh install Laravel 5.1 and get server 500全新安装 Laravel 5.1 并获取服务器 500
【发布时间】:2016-02-25 21:41:35
【问题描述】:

我通过 composer set premissions 为 /storage 和 /bootstrap/cache 安装 Laravel 5.1,并在 sites-enable/project.conf 中创建 vhost:

<VirtualHost *:80>
    # The ServerName directive sets the request scheme, hostname and port that
    # the server uses to identify itself. This is used when creating
    # redirection URLs. In the context of virtual hosts, the ServerName
    # specifies what hostname must appear in the request's Host: header to
    # match this virtual host. For the default virtual host (this file) this
    # value is not decisive as it is used as a last resort host regardless.
    # However, you must set it for any further virtual host explicitly.
    ServerName www.sklad.dev

    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html/sklad/public

    <Directory /var/www/html/sklad/public>
        AllowOverride All
        Order allow,deny
        Allow from all
        # New directive needed in Apache 2.4.3: 
        Require all granted
    </Directory>


    # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
    # error, crit, alert, emerg.
    # It is also possible to configure the loglevel for particular
    # modules, e.g.
    #LogLevel info ssl:warn

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    # For most configuration files from conf-available/, which are
    # enabled or disabled at a global level, it is possible to
    # include a line for only one particular virtual host. For example the
    # following line enables the CGI configuration for this host only
    # after it has been globally disabled with "a2disconf".
    #Include conf-available/serve-cgi-bin.conf
</VirtualHost>


# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

在 /public/.htaccess 我有:

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On

    # Redirect Trailing Slashes...
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

我在 apache2 上启用了 revrite mod 并重新启动 apache。但我仍然没有找到服务器 500。你有什么可能是错误的想法吗?来自 apache 的日志是:

[Thu Feb 25 23:14:44.838725 2016] [:error] [pid 2505] [client 127.0.0.1:37241] PHP Fatal error:  Uncaught exception 'UnexpectedValueException' with message 'The stream or file "/var/www/html/sklad/storage/logs/laravel.log" could not be opened: failed to open stream: Permission denied' in /var/www/html/sklad/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php:87\nStack trace:\n#0 /var/www/html/sklad/vendor/monolog/monolog/src/Monolog/Handler/AbstractProcessingHandler.php(37): Monolog\\Handler\\StreamHandler->write(Array)\n#1 /var/www/html/sklad/vendor/monolog/monolog/src/Monolog/Logger.php(289): Monolog\\Handler\\AbstractProcessingHandler->handle(Array)\n#2 /var/www/html/sklad/vendor/monolog/monolog/src/Monolog/Logger.php(565): Monolog\\Logger->addRecord(400, Object(Symfony\\Component\\Debug\\Exception\\FatalErrorException), Array)\n#3 /var/www/html/sklad/vendor/laravel/framework/src/Illuminate/Log/Writer.php(202): Monolog\\Logger->error(Object(Symfony\\Component\\Debug\\Exception\\FatalErrorException), Array)\n#4 /var/www/html/sklad/vendor/laravel/framework/src/Illuminate/Log/Writer.php(113): Illuminate\\Log\\Writer- in /var/www/html/sklad/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php on line 87

【问题讨论】:

  • 为什么不检查错误日志?你在运行什么服务器?对于 Linux 服务器,日志通常存储在/var/log/apache2/error.log
  • 我编辑我的问题并添加 apache 日志。

标签: apache installation laravel-5.1


【解决方案1】:

您没有为/storage 正确设置权限。它正在尝试将错误写入日志,但没有创建或写入日志的权限。

要更改此设置,请确保您以递归方式设置权限:

sudo chmod -R 777 /storage

虽然将权限设置为 777 可能会带来风险,因此请使用您熟悉的权限级别,也许是 775,因为这样可以让 Laravel 读取和写入日志文件。

您可能需要重新检查您对其他文件夹的所有权限,以确保您已递归设置它们。

【讨论】:

  • 谢谢我忘了这个:) 谢谢
猜你喜欢
  • 2015-10-17
  • 1970-01-01
  • 1970-01-01
  • 2017-11-15
  • 1970-01-01
  • 2015-09-05
  • 2016-05-05
  • 2021-03-30
  • 2019-08-09
相关资源
最近更新 更多