在云虚拟主机部署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 相关文章推荐
PHP 和 XML: 使用expat函数(一)
Oct 09 PHP
实用函数7
Nov 08 PHP
php下过滤HTML代码的函数
Dec 10 PHP
php 什么是PEAR?(第三篇)
Mar 19 PHP
php生成局部唯一识别码LUID的代码
Oct 06 PHP
smarty模板引擎中内建函数if、elseif和else的使用方法
Jan 22 PHP
php通过curl模拟登陆DZ论坛
May 11 PHP
php微信高级接口群发 多客服
Jun 23 PHP
PHP静态延迟绑定和普通静态效率的对比
Oct 20 PHP
详解在YII2框架中使用UEditor编辑器发布文章
Nov 02 PHP
PHP类与对象后期静态绑定操作实例详解
Dec 20 PHP
详解提高使用Java反射的效率方法
Apr 29 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水印
2007/03/16 PHP
实用函数9
2007/11/08 PHP
php 应用程序安全防范技术研究
2009/09/25 PHP
php实现aes加密类分享
2014/02/16 PHP
PHP处理CSV表格文件的常用操作方法总结
2016/07/01 PHP
Laravel程序架构设计思路之使用动作类
2018/06/07 PHP
PHP与以太坊交互详解
2018/08/24 PHP
Underscore.js 的模板功能介绍与应用
2012/12/24 Javascript
Javascript判断对象是否相等实现代码
2013/03/18 Javascript
jquery实现图片裁剪思路及实现
2013/08/16 Javascript
jquery中map函数遍历数组用法实例
2015/05/18 Javascript
简介JavaScript中的getSeconds()方法的使用
2015/06/10 Javascript
jQuery编程中的一些核心方法简介
2015/08/14 Javascript
jQuery height()、innerHeight()、outerHeight()函数的区别详解
2016/05/23 Javascript
jQuery的中 is(':visible') 解析及用法(必看)
2017/02/12 Javascript
vue2.0 自定义日期时间过滤器
2017/06/07 Javascript
微信小程序 自定义Toast实例代码
2017/06/12 Javascript
JS中关于正则的巧妙操作
2017/08/31 Javascript
Vuex提升学习篇
2018/01/11 Javascript
在vue中使用SockJS实现webSocket通信的过程
2018/08/29 Javascript
微信小程序缓存支持二次开发封装实现解析
2019/12/16 Javascript
vue3自定义dialog、modal组件的方法
2021/01/04 Vue.js
[04:30]显微镜下的DOTA2第五期——拉比克
2013/09/26 DOTA
python 字符串split的用法分享
2013/03/23 Python
python实现拓扑排序的基本教程
2018/03/11 Python
Python读写压缩文件的方法
2020/07/30 Python
python获取百度热榜链接的实例方法
2020/08/25 Python
个人求职简历的自我评价范文
2013/10/09 职场文书
电气专业推荐信范文
2013/11/18 职场文书
工程管理专业个人求职信范文
2013/12/07 职场文书
一份创业计划书范文
2014/02/08 职场文书
教师节商场活动方案
2014/02/13 职场文书
副校长个人对照检查材料思想汇报
2014/10/04 职场文书
同意离婚答辩状
2015/05/22 职场文书
预备党员考察意见范文
2015/06/01 职场文书
教你用Python爬取英雄联盟皮肤原画
2021/06/13 Python