在子文件夹中安装Laravel但主页显示索引

时间:2017-06-08 17:04:28

标签: php apache .htaccess laravel-5

我知道有很多类似的帖子,但经过3个小时的研究后,我仍然无法找到解决方案。希望有人可以提供帮助。

使用的技术:

  • Apache / 2.4.7(Ubuntu)
  • Laravel 5.4
  • PHP 7.0

/etc/apache2/site-enabled/000-default.conf

<VirtualHost *:80>
        ServerAdmin stanley@example.com
        Servername example.com
        DocumentRoot /var/www/html/example.com
        <Directory />
                Options +FollowSymLinks
                #AllowOverride None
                Require all granted
        </Directory>
        <Directory /var/www/html/example.com/>
                Options +Indexes +FollowSymLinks +MultiViews
                AllowOverride All
                Require all granted
        </Directory>

        <Directory "/var/www/html/example.com/parcgilley/public">
                Options Includes Indexes FollowSymLinks
                DirectoryIndex index.php
                Order allow,deny
                Allow from all
        </Directory>

        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
            AllowOverride None
            Options +ExecCGI +MultiViews +SymLinksIfOwnerMatch
            Order allow,deny
            Allow from all
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log

    .......

因此文档根目录位于/var/www/html/example.com,而我的laravel站点位于/var/www/html/example.com/parcgilley。我尝试配置000-default.conf将我的网站指向/var/www/html/example.com/parcgilley/public,但是当我访问example.com/parcgilley时,它会显示“index of / parcgilley”。当我导航到http://www.example.com/parcgilley/public/时,Chrome会显示“此页面无效”。

这是我的公开/ .htaccess文件:

Options +FollowSymLinks
RewriteEngine On

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

这不是原始内容。我按照Laravel的说明进行操作,因此我使用上面的代码替换了原点。

另外,我已经为/ parcgilley项目根文件夹和存储文件夹设置了权限,但无济于事。

我不知道是否需要创建.htaccess文件以指向/ public文件夹。但我对apache配置知之甚少。

任何见解都将受到赞赏。

编辑:

此外,我使用SSH和Git将网站从我的本地机器推送到服务器,只需在/var/repo/site.git选择。我不知道这是否与这个问题有关。

1 个答案:

答案 0 :(得分:0)

您是否曾尝试通过.htaccess禁用目录列表?

Options -Indexes

以下是更多信息: https://www.thesitewizard.com/apache/prevent-directory-listing-htaccess.shtml