Laravel虚拟主机显示公共内容而不是应用程序

问题描述 投票:0回答:2

我在服务器中有一个laravel 5.4应用程序,当我尝试测试我的应用程序时,我得到了这个结果。

enter image description here

我的虚拟主机文件

<VirtualHost *:80>
ServerName plataformafoodif.cl
DocumentRoot "/var/www/html/Plataforma-FoodIf/public"
ServerAlias www.plataformafoodif.cl
 <Directory "/var/www/html/Plataforma-FoodIf/public">
   Options All
   AllowOverride All
   Allow from all
 </Directory>
</VirtualHost>

我的index.php文件

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


</IfModule>

我的主机文件

# Generated by SolusVM
127.0.0.1       localhost localhost.localdomain
::1     localhost localhost.localdomain
# 168.232.167.108       FRESBOX.CL
168.232.167.108 plataformafoodif.cl

还有我的.env

APP_ENV=local
APP_DEBUG=true
APP_KEY=someRandomKey
APP_LOG_LEVE=debug
APP_URL=http://168.232.167.108

任何帮助都会非常感激,我花了很多时间来解决这个问题

php apache .htaccess laravel-5
2个回答
0
投票

嗨,你可以试试这个: -

<VirtualHost *:80>
ServerName plataformafoodif.cl
DocumentRoot "/var/www/html/Plataforma-FoodIf/public"
ServerAlias www.plataformafoodif.cl
 <Directory "/var/www/html/Plataforma-FoodIf">
   Options All
   AllowOverride All
   Allow from all
 </Directory>
</VirtualHost>

而且你必须配置apache2.config文件。

<Directory />
    Options FollowSymLinks
    AllowOverride None
    Require all denied
</Directory>

<Directory /usr/share>
    AllowOverride None
    Require all granted
</Directory>

<Directory /var/www/html>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

您将在apache2.conf文件中找到上面的代码,您可以在其中添加第三个目录的路径。

然后重新加载apache服务器。我希望这可以帮助你解决问题。


0
投票

最后是这样的

<IfModule dir_module>
   DirectoryIndex index.html
</IfModule>

我已经改为index.php以匹配我在public上的文件,我还添加了php模块行

LoadModule php7_module modules/libphp7.so

谢谢你的帮助

© www.soinside.com 2019 - 2024. All rights reserved.