Laravel主页给出404,但索引.php有效


Laravel home page gives 404 but index.php works

我正在我网站的子文件夹中创建自定义cms。我在 www.mysite.com/cms/

由于共享主机,我无法制作虚拟主机,但我设法通过放置 url 消除了/public

的需要
RewriteCond %{REQUEST_URI} !^/cms/public/.*$
RewriteRule ^(.*)$ /cms/public/$1 [L]

在我的 CMS 文件夹中的 .htaccess 文件中。

问题是,干净的网址可以工作 www.mysite.com/cms/public/显示Laravel入门页面。但是 www.mysite.com/cms/给了我一个 404 未找到错误,www.mysite.com/cms/index.php 显示了 Laravel 入门页面。

我已经在应用程序中设置了 url 数组元素.php

'url' => 'http://www.mysite.com/cms/',

和索引元素

'index' => '',

有人遇到过这个问题吗?

要在共享主机上使用laravel,我建议尝试一下。

顺便说一下,在您的 .htaccess 中,您只是重定向到公共目录中所有不存在的请求查询以索引.php。因为事实上,你应该用 url.com/public 访问。

也许如果您要将public文件夹的内容上传到 /cms 中,并将其他文件夹上传到 /cms_system 中,您可以更改paths.php文件以反映这一点?

所以,你会有这个:

/cms
    (contents of the public folder, with .htaccess)
/cms_system
    /application
    /bundles
    /laravel
    /storage
    (etc)

然后,您的路径将如下所示:

$paths['sys'] = 'system';
$paths['bundle'] = 'bundles';
$paths['app'] = 'application';
$paths['storage'] = 'storage';
$paths['public'] = '../cms';

我还没有测试过这个,但它应该可以工作。如果有任何问题,请告诉我,并会看看可以相应地更改什么。