【问题标题】:Laravel 5 Blade Not Working on CentOS 7Laravel 5 刀片无法在 CentOS 7 上运行
【发布时间】:2015-06-13 05:42:29
【问题描述】:

我试图在 CentOS 7 上安装一个新的 laravel 项目运行 Apache/PHP 5.6/MariaDB。

/var/www

composer create-project laravel/laravel devil
chmod -R 777 devil/storage
chmod -R 777 devil/vendor

当我尝试从浏览器访问它时,它似乎是刀片扩展 不管用。它一直显示空白页,没有任何错误。

我在我的 chrome Web 开发者扩展程序上检查了显示 500(内部服务器错误)的 HTTP 响应。

只有在我完全不使用刀片模板(不使用 .blade.php 扩展名和刀片语法)时,该应用才能工作。

下面是文件夹结构

drwxr-xr-x. 10 adzar adzar   4096 Mar 25 04:06 app
-rwxr-xr-x.  1 adzar adzar   1635 Mar 25 04:06 artisan
drwxr-xr-x.  2 adzar adzar     39 Mar 25 04:06 bootstrap
-rw-r--r--.  1 adzar adzar    788 Mar 25 04:06 composer.json
-rw-r--r--.  1 adzar adzar 100509 Mar 25 04:06 composer.lock
drwxr-xr-x.  2 adzar adzar   4096 Mar 25 04:06 config
drwxr-xr-x.  4 adzar adzar     52 Mar 25 04:06 database
-rw-r--r--.  1 adzar adzar    503 Mar 25 04:06 gulpfile.js
-rw-r--r--.  1 adzar adzar     98 Mar 25 04:06 package.json
-rw-r--r--.  1 adzar adzar     87 Mar 25 04:06 phpspec.yml
-rw-r--r--.  1 adzar adzar    777 Mar 25 04:06 phpunit.xml
drwxr-xr-x.  4 adzar adzar     95 Mar 25 04:06 public
-rw-r--r--.  1 adzar adzar   1724 Mar 25 04:06 readme.md
drwxr-xr-x.  5 adzar adzar     42 Mar 25 04:06 resources
-rw-r--r--.  1 adzar adzar    560 Mar 25 04:06 server.php
drwxrwxrwx.  5 adzar adzar     60 Mar 25 04:06 storage
drwxr-xr-x.  2 adzar adzar     47 Mar 25 04:06 tests
drwxrwxrwx. 26 adzar adzar   4096 Apr  8 18:31 vendor

.env file(不变)

APP_ENV=local
APP_DEBUG=false
APP_KEY=EOvUHTpMtavKDMx1GdkREtbves8PVEUb

DB_HOST=localhost
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret

CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync

MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io

我使用 IP 地址 (100.255.XXX.XXX) 使用 apache 虚拟主机访问我的应用程序。下面是我的/etc/httpd/conf/httpd.conf

...

#
# ServerName gives the name and port that the server uses to identify itself.
# This can often be determined automatically, but we recommend you specify
# it explicitly to prevent problems during startup.
#
# If your host doesn't have a registered DNS name, enter its IP address here.
#
ServerName 100.255.XXX.XXX

...

<VirtualHost *:80>
        ServerName 100.255.XXX.XXX
        DocumentRoot /var/www/devil/public

        <Directory /var/www/devil>
            AllowOverride All
        </Directory>
</VirtualHost>

请帮忙,谢谢。

【问题讨论】:

  • The HTTP response is 500 (Internal server error) as showed on my chrome web developer extension. 这一点很重要 :) 单击请求本身并检查响应内容。如果那里什么都没有,您可能禁用了错误显示 - 检查服务器日志。另外,请确保您已在 app.php 配置文件中将 $debug 设置为 false 以匹配您的环境。
  • 响应内容上没有任何内容。 .env 文件上的 APP_DEBUG 默认为 true。将其设置为 true 并没有改变任何东西。我检查了 storage/logs 文件夹中的日志,但没有日志文件。
  • 好的,试试网络服务器日志,例如,如果是 Apache 2,它们通常位于 /var/log/apache2/error.log/var/log/apache2/access.log。请注意,这些路径对您而言可能会有所不同,具体取决于服务器和操作系统版本、虚拟主机配置等。
  • 这里是来自 error_log 的条目:[Wed Apr 08 17:24:13.572620 2015] [:error] [pid 5034] [client 36.72.194.83:60849] PHP Fatal error: Uncaught exception 'UnexpectedValueException' with message 'The stream or file "/var/www/devil/s$*
  • 来自access_log 36.72.194.83 - - [08/Apr/2015:17:24:13 +0700] "GET /auth/login HTTP/1.1" 500 - $

标签: php laravel laravel-5 blade


【解决方案1】:

刀片模板将其模板广泛缓存在文件系统中。

因此,您需要确保您的网络服务器可以写入相应的文件夹。

Laravel 可能需要配置一些权限:storagevendor 中的文件夹需要 Web 服务器的写入权限。

通过在控制台中运行以下命令来修复您的文件夹权限:

chmod 664 /var/www/devil/storage -R

chmod 664 /var/www/devil/vendor -R

来源:http://laravel.com/docs/5.0/installation#configuration

【讨论】:

  • 还是不行。我什至尝试从头开始重新安装我的 laravel,如下所示:1. composer create-project laravel/laravel /var/www/devil 2. chmod 664 /var/www/devil/storage -R 3. chmod 664 /var/www/devil/vendor -R 刀片仍然无法正常工作。
  • 对于您的情况,您的存储文件夹将位于/var/www/devil/laravel/app/storage
  • 不。我正在使用 laravel 5。供应商和存储文件夹位于 /var/www/devil/storage/var/www/devil/vendor
  • 您能否将您在app/storage/logs 中找到的错误日志转储到 pastebin.com?
  • 问题是应用程序无法写入app/storage/logs 艰难我已设置文件夹权限。这是来自 apache pastebin.com/eh3MC1D7 的日志
【解决方案2】:

更新

经过数小时的尝试,我终于能够通过禁用 SELinux 来解决问题。

setenforce 0

但是,我仍然不知道为什么。

【讨论】:

  • 老兄。这行得通。这绝对有效。该死。 6 小时试图让事情正常工作,修改 apache conf,重新启动服务器,什么都没有。这做到了。谢谢!非常感谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-12-05
  • 2016-04-22
  • 2017-01-05
  • 2015-06-08
  • 2020-06-08
  • 2014-10-25
  • 1970-01-01
相关资源
最近更新 更多