【问题标题】:Always getting blank page on all Laravel routes在所有 Laravel 路线上总是出现空白页
【发布时间】:2020-02-18 01:25:18
【问题描述】:

访问下面给出的 Laravel 项目时,我总是得到空白页。请告知如何解决此问题。谢谢!

http://1.231.118.4:9000/

http://1.231.118.4:9000/admin/login

阿帕奇 2.4 PHP 7.2 MySQL 5.7

phpinfo:http://1.231.118.4:9000/info.php

虚拟主机:

<VirtualHost *:9000>
    ServerName 1.231.118.4
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html/ico/public
    <Directory /var/www/html/ico/public>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
     </Directory>
    ErrorLog /var/www/html/ico/error.log
</VirtualHost>

.htaccess:

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

    RewriteEngine On

    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} (.+)/$
    RewriteRule ^ %1 [L,R=301]

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

【问题讨论】:

  • 您的storage/logs/laravel.log 中没有任何内容?
  • 它是空的。任何地方都没有错误日志。
  • 显然,有些事情是这样的,例如您的 404 页面不是典型的样板网络服务器 404 页面,PHP 是根据您的服务器配置运行的,所以我猜这是您自己的代码,因此,我认为这不是服务器配置问题,而是代码问题。
  • 我在不同版本上部署相同的代码。相同版本的代码正在其他服务器上运行。有什么办法可以解决问题吗?
  • 可以上传你的项目文件夹结构截图吗?

标签: php laravel


【解决方案1】:

我遇到了同样的问题,结果发现我在公共目录中的 index.php 文件中的所有代码都被注释了!你可以试试看

【讨论】:

    【解决方案2】:

    在我的 app\Providers\RouteServiceProvider.php 文件中,路由在 443 端口上提供服务,这就是我在所有路由上都得到 404 的原因。还是谢谢大家。

        public function map()
        {
            switch(request()->getPort()){
    
              case 9001:
                    //exit;
                  break;
              case 443:
                  $this->mapAdminWebRoutes();
                  $this->mapApiRoutes();
                  $this->mapWebRoutes();
                  break;
             // choose a port that is not used by another server
              default:
              $this->mapAdminWebRoutes();
                  $this->mapApiRoutes();
                  $this->mapWebRoutes();
                  break;
            }
        }
    

    【讨论】:

      【解决方案3】:

      在我的例子中,.env 文件有一个格式错误的条目,因为所有值都不允许在没有引号的值中使用空格:

      #BAD
      DATETIME_FORMAT=Y-m-d H:i:s
      #GOOD
      DATETIME_FORMAT="Y-m-d H:i:s"
      

      由于某种原因,这个错误没有输出任何东西,希望对有同样问题的人有用!

      【讨论】:

        猜你喜欢
        • 2017-03-19
        • 1970-01-01
        • 1970-01-01
        • 2021-05-22
        • 2015-06-07
        • 1970-01-01
        • 2019-07-16
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多