2017-09-24 148 views
0

我正在使用共享托管服务器,我安装了我的第一个Laravel 5.4应用程序,并且所有内容仍然正常工作。几天前,我在另一个域中安装了另一个Laravel 5.4应用程序,但是同一台服务器上,但是当我尝试访问该URL时,我得到了500 INTERNAL SERVER ERROR共享托管服务器上的Laravel返回错误500

下面是我.htaccess代码

<IfModule mod_rewrite.c> 
    RewriteEngine on 
    RewriteCond %{REQUEST_URI} !^public 
    RewriteRule ^(.*)$ public/$1 [L] 
</IfModule> 

我也试过以下,但同样的错误:

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

    RewriteEngine On 

    ### Add two lines for fix error 500 ### 
    Options -Indexes 
    php_flag xcache.cacher 0 
    ####################################### 

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

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

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

回答

0

你移动你的public_html文件夹内的一切,你不应该这样做。只有/public内的文件需要位于public_html,因此名称为public。应该将Laravel文件放置在无法从公众访问的较高目录中。

  1. 与Softaculous安装Laravel,或composer通过SSH在/home/username/laravel
  2. 移动一切/home/username/public_html文件夹中/home/username/laravel/public /home/username/laravel
  3. 移动一切/home/username/public_html和移动后删除公用文件夹。
  4. 编辑这个文件:/home/username/public_html/index.php
  5. 更改为require '/home/username/laravel/vendor/autoload.php';
  6. 更改为$app = require_once '/home/username/laravel/bootstrap/app.php';
  7. 保存此文件并关闭窗口。

  8. 编辑这个文件:/home/username/laravel/server.php

  9. 更改为:

    if ($uri !== '/' && file_exists('/home/username/public_html'.$uri)) { 
        return false; 
    } 
    
    require_once '/home/username/public_html/index.php'; 
    

替换username与您的托管用户名。 :)

+0

现在它显示了一个不同的错误,当我尝试访问域(forumcover.com)时,它显示laravel框架的完整文件夹结构。当我尝试访问登录路径(forumcover.com/login )我找不到“在此服务器上找不到请求的URL /index.php 此外,尝试使用ErrorDocument处理请求时遇到404未找到错误。 – user3867365

+0

请删除,你泄露了你的数据库细节! – emotality

+0

我知道什么是错将更新我的答案。 – emotality

相关问题