在百度云主机上部署thinkphp5.1的注意事项

发布时间 - 2020-06-13 00:00:00    点击率:

下面由TP5教程栏目给大家介绍在百度云主机上部署thinkphp5.1的注意事项,希望对需要的朋友有所帮助!

thinkphp5.1部署在百度云主机的注意事项

网站建好了,找了一圈好点的云主机部署,首先看的是openshift,虽然有免费的支持,但是限制很多,且部署相当麻烦。正好看到最近百度云主机做活动,于是搞了一个bch玩一玩。但是也遇到很多坑,加上百度云主机对应的支持文档写的简单随意,也是遇到不少麻烦,整理出来,供参考。

1、程序文件上传位置

需要把你的程序根目录文件下的文件和文件夹上传到云主机对应的/webroot目录下,/webroot下此时已经有一些系统自动生成的文件,没关系,直接把你的文件内容(注意不是你的程序文件的根目录这一个文件夹,而是根目录下的所有内容)上传到这里就可以了。

2、首页无法进入的问题

无法进入自己的首页,主要因为从是thinkphp5开始,入口页面index.php被放在了public目录下了,所以,nginx这时候找不到入口文件,所以进步了主页。这时候有两种处理办法:

第一,是将你的入口文件从public下copy到webroot下面,这里需要注意修改你入口文件中的配置,比如:

// 定义应用目录 
define('APP_PATH', __DIR__ . '/../application/'); 
require __DIR__ . '/../thinkphp/start.php';

改为

 // 应用目录
define('APP_PATH', __DIR__.'/application/');
// 加载框架引导文件
require './thinkphp/start.php';

由于这里涉及到修改框架结构,本着尽量少改动的想法,我没有选择这种做法

第二,在webroot目录下新建index.php文件,增加一句代码即可

这样就实现了通过新添加引导文件引导到我们正确的入口文件的目的,OK,这个时候你再试下,程序正常进入首页

3、只有首页能进入,其他页面404无法找到文件

主要是因为在thinkphp中做了url的重写PATHINFO,隐藏了入口文件,所以你在你的apache服务器中是没有感知,http://localhost/index.php 与 http://localhost 是一样的效果,但是在云虚拟机中,用的是nginx,这个时候,你的入口文件就隐藏不了了,如果要隐藏,就会报错404无法找到文件。要么你在处理时候注意加上入口文件,要么做url重写。

在webroot下新建bcloud_nginx_user.conf文件,代码如下:

  location / { 
   if (!-e $request_filename) {
   rewrite  ^(.*)$  /index.php?s=/$1  last;
   break;
    }
 }

4、可能你会遇到静态文件js/css/images等文件找不到,缺少样式等问题

这个时候你可以看看加载web时候,静态网页的地址是否正确,三种办法处理,一是在你的php的template.conf文件中做replace配置修改,把相应的文件做好别名;一种是重定向,在webroot下添加文件bcloud_nginx_user.conf,添加代码

location ~ ^/(images|javascript|js|css|flash|media|static)/ {
        root /home/bae/app/htdocs;
        #过期30天,静态文件不怎么更新,过期可以设大一点,如果频繁更新,则可以设置得小一点。
        expires 30d;
    }

或者第三种办法,bcloud_nginx_user.conf种添加代码如下

location / {
root /home/bae/app/public;
index index.php index.html index.htm;
}


# 首页  # 这个时候  # 的是  # 找不到  # 你在  # 重写  # 自己的  # 中做  # 这时候  # 加载 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: php后缀怎么变mp4格式错误_修改扩展名提示格式不对怎么办【技巧】  消息称 OpenAI 正研发的神秘硬件设备或为智能笔,富士康代工  Laravel如何与Docker(Sail)协同开发?(环境搭建教程)  Laravel如何安装Breeze扩展包_Laravel用户注册登录功能快速实现【流程】  JavaScript如何实现继承_有哪些常用方法  js实现获取鼠标当前的位置  如何正确选择百度移动适配建站域名?  三星网站视频制作教程下载,三星w23网页如何全屏?  浅谈redis在项目中的应用  php读取心率传感器数据怎么弄_php获取max30100的心率值【指南】  Laravel如何实现API版本控制_Laravel API版本化路由设计策略  Laravel如何使用API Resources格式化JSON响应_Laravel数据资源封装与格式化输出  Laravel怎么清理缓存_Laravel optimize clear命令详解  如何快速查询网址的建站时间与历史轨迹?  Python正则表达式进阶教程_复杂匹配与分组替换解析  如何快速使用云服务器搭建个人网站?  Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道  百度浏览器如何管理插件 百度浏览器插件管理方法  重庆市网站制作公司,重庆招聘网站哪个好?  移动端脚本框架Hammer.js  Laravel如何创建自定义Artisan命令?(代码示例)  品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?  如何在阿里云虚拟主机上快速搭建个人网站?  高端网站建设与定制开发一站式解决方案 中企动力  javascript中的try catch异常捕获机制用法分析  Laravel如何实现API速率限制?(Rate Limiting教程)  如何用AWS免费套餐快速搭建高效网站?  Android中Textview和图片同行显示(文字超出用省略号,图片自动靠右边)  如何在Windows服务器上快速搭建网站?  百度输入法全感官ai怎么关 百度输入法全感官皮肤关闭  JS碰撞运动实现方法详解  合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?  Laravel如何使用Eloquent进行子查询  HTML透明颜色代码怎么让下拉菜单透明_下拉菜单透明背景指南【技巧】  猎豹浏览器开发者工具怎么打开 猎豹浏览器F12调试工具使用【前端必备】  如何在HTML表单中获取用户输入并结合JavaScript动态控制复利计算循环  Laravel如何使用模型观察者?(Observer代码示例)  深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?  Win10如何卸载预装Edge扩展_Win10卸载Edge扩展教程【方法】  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  Laravel如何创建自定义Facades?(详细步骤)  php 三元运算符实例详细介绍  laravel怎么配置Redis作为缓存驱动_laravel Redis缓存配置教程  Laravel怎么实现验证码功能_Laravel集成验证码库防止机器人注册  nodejs redis 发布订阅机制封装实现方法及实例代码  东莞市网站制作公司有哪些,东莞找工作用什么网站好?  如何快速选择适合个人网站的云服务器配置?  如何快速搭建高效WAP手机网站吸引移动用户?  laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法  Laravel如何实现API资源集合?(Resource Collection教程)