Php Laravel子文件夹htaccess
我试图在我的站点上的子文件夹中运行laravel,但在htaccess部分遇到了问题 我在这里看到了很多类似的问题,但我没有发现任何适用于我的案例的问题,也没有找到完全有效的问题 我的文件夹结构有几个层次:Php Laravel子文件夹htaccess,php,.htaccess,laravel,mod-rewrite,laravel-4,Php,.htaccess,Laravel,Mod Rewrite,Laravel 4,我试图在我的站点上的子文件夹中运行laravel,但在htaccess部分遇到了问题 我在这里看到了很多类似的问题,但我没有发现任何适用于我的案例的问题,也没有找到完全有效的问题 我的文件夹结构有几个层次: site root/folder1/folder2/laravel installation/public folder/ 我一直在尝试将laravel安装文件夹重定向到公用文件夹,以前使用htaccess在根目录中安装laravel时,我已经这样做了: RewriteRule ^(fol
site root/folder1/folder2/laravel installation/public folder/
我一直在尝试将laravel安装文件夹重定向到公用文件夹,以前使用htaccess在根目录中安装laravel时,我已经这样做了:
RewriteRule ^(folder1/folder2/laravel installation/)
/folder1/folder2/laravel installation/public folder/
当我将一个空白的测试索引文件放入公用文件夹时,上面的代码会工作,并重定向到它
但是,当我使用laravel索引文件时,会出现以下laravel错误:
NotFoundHttpException in RouteCollection.php line 161
如果我删除htaccess并直接导航到公用文件夹,laravel工作(这是laravel的新安装)
我是否需要更改laravel配置文件中的某些内容才能使其正常工作?或者这是不可能的
多谢各位
编辑:
我忘了提到我的公用文件夹中有一个htaccess文件,下面是代码:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
访问index.php的确切路径是什么?因为据我所知,你不能只是去。这可能意味着您没有在routes.php中定义要访问的路由。这是laravel的空白安装,因此路由为“/”。我指向的url不包含index.php,我只是指向该文件夹,但它不是直接从根目录中删除的。我正在我的一个站点的子域中测试这个,url是:www.demo.[mydomain].com/folder1/folder2/laravel/。路由是laravel 5的默认路由,即:route::get('/',function(){return View('welcome');});但我也尝试过返回一个字符串,但仍然得到了相同的http not found。我刚刚发现,如果在url之后键入index.php,它确实可以工作!请参见问题底部的编辑尝试将路由定义为该文件夹结构。我认为laravel在处理子文件夹方面做得不好。不要试图欺骗laravel使用www.domain.com/path/to/my/app/,只需告诉laravel您希望它在routes.php文件中的位置即可
www.demo.[mydomain].com/folder1/folder2/laravel/index.php