在云虚拟主机部署thinkphp5项目的步骤详解


Posted in PHP onDecember 21, 2017

前言

Thinkphp作为开源的PHP框架发展到今天,无疑是国内最适合PHP学员学习和使用的框架,除了简单容易上手,更大的优点是开发文档完善、插件丰富。本文将给大家详细介绍关于在在云虚拟主机部署thinkphp5项目的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

查阅ThinkPHP5.0完全开发手册->部署->虚拟主机环境,了解情?r后,开始修改。

环境

  • thinkphp 5.0.11
  • 阿里云云虚拟系统CentOS

第一步

修改移动入口文件位置,把它移动到根目录下(即htdocs)。

修改index.php入口文件内容

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

这下可以访问了,但点下内页看看,路径重写不生效了。因为缺少了.htaccess文件。

第二步

把.htaccess文件也移动到根目录下。

至此可能你已经解决了问题。没解决的接下来继续看。

第三步

安全性!

因为你将入口文件移到了跟目录,框架下的所有目录已经暴露了。

如果apache服务器没处理。那就可以直接访问重要文件。

不管他有没有做处理,直接跟目录下的每个目录都来个.htaccess。然后写入deny from all。

deny from all

好了。

第四步

解决:css、js、图片等静态资源404了。

因为移出了public目录,所以文件找不到了。

需要替换全部目录路径。

如果你是使用__PUBLIC__,__STATIC__,__CSS__,__JS__等来写

那么恭喜你,直接在配置改view_replace_str就行了

'view_replace_str'  => [
 '__PUBLIC__' => '/public',
 '__STATIC__' => '/public/static',
 '__CSS__' => '/public/static',
 '__JS__'  => '/public/static',
],

如果不是,那就全部视图文件,所有用到用到路径的地方全盘替换目录

/public/static

特别容易忽略的地方是css里面的background路径,和自定义上传路径,请注意。

第五步

Linux下的文件路径大小写敏感。

例如你的:

控制器方法名是:public function userCenter()

对应视图文件是:userCenter.html,

那么你访问的时候发现视图文件找不到,报错了。

解决办法:

方法1、改模板文件名全为小写;

方法2、$this->fetch('模板文件名');

方法3、$this->fetch(__FUNCTION__),但要求视图文件名要跟方法名一样。

测试下网站所有功能,ok没问题,部署配置完毕。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

PHP 相关文章推荐
第十四节--命名空间
Nov 16 PHP
PHP 观察者模式的实现代码
May 10 PHP
解析如何去掉CodeIgniter URL中的index.php
Jun 25 PHP
php实现json编码的方法
Jul 30 PHP
摘自织梦CMS中的图片处理类
Aug 08 PHP
CodeIgniter多语言实现方法详解
Jan 20 PHP
thinkphp整合微信支付代码分享
Nov 24 PHP
Yii框架表单提交验证功能分析
Jan 07 PHP
详解PHP5.6.30与Apache2.4.x配置
Jun 02 PHP
PHP实现的基于单向链表解决约瑟夫环问题示例
Sep 30 PHP
PHP fclose函数用法总结
Feb 15 PHP
windows 2008r2+php5.6.28环境搭建详细过程
Jun 18 PHP
php获取微信共享收货地址的方法
Dec 21 #PHP
php实现socket推送技术的示例
Dec 20 #PHP
PHP实现模拟http请求的方法分析
Dec 20 #PHP
php封装db类连接sqlite3数据库的方法实例
Dec 19 #PHP
PHP性能分析工具xhprof的安装使用与注意事项
Dec 19 #PHP
PHP实现的最大正向匹配算法示例
Dec 19 #PHP
PHP实现的字符串匹配算法示例【sunday算法】
Dec 19 #PHP
You might like
用PHP读取RSS feed的代码
2008/08/01 PHP
php 异常处理实现代码
2009/03/10 PHP
php 中文和编码判断代码
2010/05/16 PHP
php中删除字符串中最先出现某个字符的实现代码
2013/02/03 PHP
ThinkPHP模板比较标签用法详解
2014/06/30 PHP
php基于ob_start(ob_gzhandler)实现网页压缩功能的方法
2017/02/18 PHP
PHP实现QQ、微信和支付宝三合一收款码实例代码
2018/02/19 PHP
分享精心挑选的12款优秀jQuery Ajax分页插件和教程
2012/08/09 Javascript
关于javascript模块加载技术的一些思考
2014/11/28 Javascript
简介AngularJS中使用factory和service的方法
2015/06/17 Javascript
jquery正则表达式验证(手机号、身份证号、中文名称)
2015/12/31 Javascript
js使用Replace结合正则替换重复出现的字符串功能示例
2016/12/27 Javascript
canvas实现钟表效果
2017/02/13 Javascript
Angularjs单选改为多选的开发过程及问题解析
2017/02/17 Javascript
vue.js简单配置axios的方法详解
2017/12/13 Javascript
探索Vue高阶组件的使用
2018/01/08 Javascript
vue-prop父组件向子组件进行传值的方法
2018/03/01 Javascript
完美解决iview 的select下拉框选项错位的问题
2018/03/02 Javascript
浅谈vue-cli 3.0.x 初体验
2018/04/11 Javascript
解决vue-cli项目webpack打包后iconfont文件路径的问题
2018/09/01 Javascript
用Vue编写抽象组件的方法
2019/05/06 Javascript
vue实现网络图片瀑布流 + 下拉刷新 + 上拉加载更多(步骤详解)
2020/01/14 Javascript
JS轮播图的实现方法
2020/08/24 Javascript
[47:06]DOTA2上海特级锦标赛主赛事日 - 4 败者组第五轮 MVP.Phx VS EG第一局
2016/03/05 DOTA
unittest+coverage单元测试代码覆盖操作实例详解
2018/04/04 Python
OPENCV去除小连通区域,去除孔洞的实例讲解
2018/06/21 Python
Python 多线程共享变量的实现示例
2020/04/17 Python
Python调用JavaScript代码的方法
2020/10/27 Python
Python3中FuzzyWuzzy库实例用法
2020/11/18 Python
京东全球售:直邮香港,澳门,台湾,美国,澳大利亚等地区
2017/09/24 全球购物
儿科护士实习自我鉴定
2013/10/17 职场文书
给排水工程师岗位职责
2013/11/21 职场文书
影子教师研修方案
2014/06/14 职场文书
债务追讨授权委托书范本
2014/10/16 职场文书
辞职信范文大全
2015/03/02 职场文书
2016年寒假学习心得体会
2015/10/09 职场文书