Laravel 5.5在Godaddy上。产生错误500。内部服务器错误

时间:2019-01-29 09:57:09

标签: php laravel shared-hosting

我已将laravel文件上传到Godaddy共享主机。

我的文件夹结构是这样的

/mediservices
    all-other-laravel-files-and-folders

/public_html
    public
       index.php

对public_html中public文件夹中index.php的内容进行了编辑,使其指向medsirvices文件夹,如下所示-

22. require __DIR__.'/../../mediservices/bootstrap/autoload.php';
34. $app = require_once __DIR__.'/../../mediservices/bootstrap/app.php';

我已将以下内容添加到public_html文件夹中的.htaccess文件中

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

当我进入域时,仍然收到500 Internal Server Error。

完整的消息是

Internal Server Error
The server encountered an internal error or misconfiguration and was 
unable to complete your request.

Please contact the server administrator at webmaster@medcommhospital.com to 
inform them of the time this error occurred, and the actions you performed 
just before this error.

More information about this error may be available in the server error log.

Additionally, a 500 Internal Server Error error was encountered while trying 
to use an ErrorDocument to handle the request.

1 个答案:

答案 0 :(得分:0)

在评论之后,我可以提出以下建议。如果要在站点根目录下或站点上的文件夹下提供站点服务,则需要明确说明。

密切注意您的日志,他们会告诉您问题所在。并确保它实际上是相同的错误,即使是很小的细节更改也可以为您提供更多信息。

在站点根目录下提供服务的站点

如果要将站点/ Laravel项目服务器托管在域根目录下,例如example.org/,则应按以下方式进行配置。

# Contains  all other laravel files
mediservices/
  ...

public_html/ <webserver root> <laravel public dir>
  index.php
  .htaccess

您在index.php中对引导程序的引用应该是

__DIR__ . '/../mediservices/bootstrap/autoload.php'

您的.htaccess文件不需要重写规则,因此您可以删除该配置。

服务站点位于域上的文件夹下

但是,如果您希望从URL中域部分之后的文件夹mediservices/提供项目,例如example.org/mediservices/,并将用户重定向到该文件夹​​,则可以保留{{1} }重写规则,但是必须将Laravel公用文件夹移动到以下位置:

.htaccess

您在# Contains all other laravel files mediservices/ ... public_html/ <webserver root> mediservices/ <laravel public dir> index.php .htaccess <should stay under the public_html/ folder> 中使用的引用应与以前一样,如下所示。

index.php