在共享主机上的index.php Laravel 500内部服务器错误

在共享主机上的index.php Laravel 500内部服务器错误

问题描述:

我已经将我的laravel项目上传到托管。我的文件夹结构看起来像这样在共享主机上的index.php Laravel 500内部服务器错误

-httpdocs 
-app 
-config 
-resources 
-database 
-contents of public folder(htaccess,index.php etc.) 
-storage 
-vendors 

我已经移动了公用文件夹的内容和子文件夹。现在当我访问我的网站www.something.com我得到内部服务器错误。我试图删除index.php(该文件从公用文件夹移动到httpdocs),并用index.html替换。当我访问我的网站时,我能够看到该页面。但是当用index.php替换时,我得到了内部服务器错误。

我已经改变了一下index.php文件中这样

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

这里是我的htaccess文件

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

RewriteEngine On 

# 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}] 

是因为引导文件夹的权限发生?或者背后的猜测?我坚持了这个对于过去三小时

Linux服务器

也许确保对文件夹的权限是正确的。例如,我认为'存储'必须有更宽松的权限(777,755左右)。经常通过FTP上传可能会失去附加到文件夹的权限。

转到您的laravel安装的根目录,然后运行以下命令:

chmod -R 777 storage 

存储目录包含编译的刀片模板,基于文件的会话,文件高速缓存,并通过Laravel产生的其他文件。所以,如果你没有读/写权限的权利就会造成500内部服务器错误

的Windows服务器

根据this以下命令将解决权限问题的IIS7上

cacls laravel /t /g everyone:f 
+0

如何这会改变事情吗?需要一些解释。和Windows机器上的chmod? –

+0

你的服务器是Windows服务器吗? –

+0

是的,它是Windows服务器上托管012爸爸 –