Laravel 5.2显示了apache屏幕而不是index.php

时间:2016-08-17 11:07:57

标签: apache laravel-5.2 httpd.conf digital-ocean centos7

我检查了大部分关于我的问题的问题,因为这对于Laravel初学者来说似乎是非常常见的错误,但到目前为止我找不到解决方案:(

我使用数字海洋VPN,centos7,php5.6,apache,windows 10。

安装laravel并配置 httpd.conf mysite.com.conf .htaccess 主机 fies然后重新启动apache,但仍然欢迎屏幕显示,它显示apache屏幕。

+ ============================================== ==== +

这是我的设置......

1)/etc/httpd/conf/httpd.conf

<Directory "/var/www/html">
Options -Indexes +FollowSymLinks
AllowOverride None (default setting)

并添加到文件末尾

ServerSignature Off
ServerTokens Prod
IncludeOptional sites-enabled/*.conf

供参考,其他默认设置在

之下
DocumentRoot "/var/www/html"
<Directory "/var/www">
 AllowOverride None
 Require all granted
</Directory>

2)/etc/httpd/sites-available/mysite.com.conf

<VirtualHost *:80>
ServerAdmin admin@mysite.com
ServerName mysite.com
ServerAlias mysite.com
DocumentRoot /var/www/mysite.com/public_html
ErrorLog /var/log/httpd/mysite.com_error_log
CustomLog /var/log/httpd/mysite.com_access_log combined
AddDefaultCharset UTF-8
<Directory /var/www/mysite.com/public_html>
  <IfModule mod_rewrite.c>
    Options -MultiViews
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
  </IfModule>
  AllowOverride All
</Directory>
</VirtualHost>

3)/var/www/mysite.com/public_html/.htaccess

<IfModule mod_rewrite.c>
 <IfModule mod_negotiation.c>
  Options -MultiViews
 </IfModule>
 RewriteEngine On
 RewriteRule ^(.*)/$ /$1 [L,R=301]
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteRule ^ index.php [L]
</IfModule>

4)C:/ windows / system32 / drivers / etc / hosts

digitaloceanDropletIp mysite.com

5)publi_html文件夹img

blog

如果有人能告诉我我的设置有什么问题,我将非常感激。 提前谢谢!

2 个答案:

答案 0 :(得分:2)

更改

DocumentRoot /var/www/mysite.com/public_html

DocumentRoot /var/www/mysite.com/public_html/public

然后重启你的apache

答案 1 :(得分:1)

[解决]

在最亲密的帮助下,我终于设法展示了Laravel标志!愚蠢的是我没有意识到index.php在公共文件夹中!

我保留了httpd.conf并且托管与上面相同,但是更改了下面的mysite.com.conf并完全删除/删除了public_html / .htaccess(我可能需要它,但这个阶段我不需要)。

<VirtualHost *:80>
ServerName mysite.com
ServerAlias mysite.com
ServerAdmin admin@mysite.com
DocumentRoot "/var/www/mysite.com/public_html/public"
ErrorLog /var/log/httpd/mysite.com_error_log
CustomLog /var/log/httpd/mysite.com_access_log combined
AddDefaultCharset UTF-8
 <Directory "/var/www/mysite.com/public_html/public">
  AllowOverride All
 </Directory>
</VirtualHost>

在此更改之后,出现403错误(似乎是apache发生这种情况)所以我在“RewriteEngine On&#39;之前添加了以下行”。在公共场所/ .htaccess参考:非英语网站

Options +FollowSymLinks

然后500错误出现了,所以我使用putty作为打击命令(我必须这样做,即使我以前做过&#39; chmod 777存储&#39;)参考:Laravel空白屏幕。

chmod -R guo+w storage

然后终于&#39; Laravel&#39;出现了:)无论如何,感谢所有的帮助!