laravel7 开发的项目配置到虚拟主机上

起因: 之前做的一个项目需要配置到虚拟主机上.

(本人之前都是直接放到ecs实例上的, 纯系统安装宝塔搞定就基本ok了. ^_^)

环境 : 云虚拟主机 ,php7.2 mysql nginx 这些都是配置好的.

虚拟主机网站根目录是固定的,我们没法通过nginx的配置文件修改网站绑定的站点根目录

伪静态配置: (谷歌出来的)
laravel7 开发的项目配置到虚拟主机上

修改项目的访问目录:
改之前的目录: (默认项目的初始访问文件都是放在public/index.php下)

laravel7 开发的项目配置到虚拟主机上

更改目录:
1.先把除了public目录外的所有文件都放到local目录(local是我新建的一个文件夹)下.
2.在把public目录下的所有文件都放到站点根目录. 这样index.php就能访问到了.
3.修改index.php ,如下图:

laravel7 开发的项目配置到虚拟主机上

要注意: 此时的public_path() 函数对应的目录位置 : 站点根目录/local/public ; 其它的助手目录函数
都会发生类似的变化.

问题: 当我登录laravel-admin的后台, 发现所有的文件上传都保存不了. 报错信息:

laravel7 开发的项目配置到虚拟主机上
谷歌问题找到答案:
虚拟主机默认没有开启php的 chmod函数. 开启后文件保存成功
laravel7 开发的项目配置到虚拟主机上

总结:

  1. 在没法修改虚拟主机站点根目录的情况下, 需要修改laravel的目录结构.
  2. 伪静态可以通过nginx设置去配置
  3. chmod等函数,虚拟主机是默认关闭的,需要手动开启.

重点: 遇到报错的时候,先查看错误日志. 通过错误日志给出的错误信息再去分析会比较简单点.

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!