【问题标题】:Remove Laravel Lumen Public path Ubuntu Cloud Server删除 Laravel Lumen 公共路径 Ubuntu Cloud Server
【发布时间】:2016-07-29 14:21:57
【问题描述】:

我正在尝试在 ubuntu 服务器 14.04 LTS 上删除 lumen 5.2 上的公共路径

这是我的 .htaccess

<IfModule mod_rewrite.c>
    RewriteEngine On 
    RewriteRule ^(.*)$ public/$1 [L]
</IfModule>

我已经在我的 apache 上允许 mod_rewrite

还将它添加到我的 apache2.conf 以允许覆盖

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

我收到了错误

Sorry, the page you are looking for could not be found.

但是,如果我将 public 路径添加到 url,它就可以工作。有人遇到这个问题吗?

我正在尝试从 http://www.example.com/publichttp://www.example.com/

【问题讨论】:

    标签: laravel ubuntu apache2 lumen lumen-5.2


    【解决方案1】:

    解决这个问题:

    恢复您原来的 .htaccess 并且永远不要编辑它。

    编辑你的 Apache 配置文件,你应该有这样的东西:

    <VirtualHost *:80>
      ServerName myapp.localhost.com
      DocumentRoot "/var/www/html/lumen/public"
      <Directory "/var/www/html/lumen/public">
        AllowOverride all
      </Directory>
    </VirtualHost>
    

    重启 Apache。

    【讨论】:

      【解决方案2】:

      改变

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

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

      因为你的文档根目录是public 目录。并从 .htaccess 中删除 public/

      【讨论】:

      • 仍然有同样的问题,当我为我的 .htaccess 删除 public/ 时,它显示我的目录列表而不是我的公共文件夹
      • 我没有从public 文件夹中编辑.htaccess,而是在我的根目录上新建了一个
      • 尝试删除那个新的.htaccess。还要确保您的DocumentRoot 指向public 目录。
      • 我已经这样做了,但就像我的第一条评论一样发生了同样的事情
      猜你喜欢
      • 2017-01-20
      • 2018-07-29
      • 1970-01-01
      • 2015-08-27
      • 2019-08-15
      • 2016-05-16
      • 2015-06-09
      • 2016-07-25
      • 1970-01-01
      相关资源
      最近更新 更多