当我试图运行其他路由时,遇到localhost/project/public/acp或localhost/acp,它会说找不到文件夹,但当使用localhost:8000/acp时,它工作正常,这是我的路由:
Route::get('acp', 'CommentController@admin');
我使用Linux服务器。。。那个么什么才是将Laravel应用程序投入生产的正确方法呢?
这也很好:localhost/project/public/但其他路由编号…
如果您使用的是php artisan serve
,则您的站点运行在localhost:8000
上,并且public
目录之外的任何内容都无法直接访问。php artisan serve
永远不应该用于为生产站点提供服务,它只用于开发用途。
如果您希望它在localhost/project/public/acp
上运行,您必须将Web服务器的文档根指向project
的父文件夹。这取决于您使用的服务器,由于以下原因,这是不可取的。
在已部署的Laravel网站的URL中看到public
文件夹将表明存在重大的安全问题,因为它会使私人文件(如.env
)可能可访问,并且如果您在服务器/PHP配置中犯了错误,它可能会允许您的PHP文件以纯文本形式读取。