在云虚拟主机部署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 加密/解密函数 dencrypt(动态密文,带压缩功能,支持中文)
Jan 30 PHP
php中防止伪造跨站请求的小招式
Sep 02 PHP
深入探讨:PHP使用数据库永久连接方式操作MySQL的是与非
Jun 05 PHP
PHP 使用header函数设置HTTP头的示例解析 表头
Jun 17 PHP
php判断手机访问还是电脑访问示例分享
Jan 20 PHP
thinkphp中session和cookie无效的解决方法
Dec 19 PHP
Yii2前后台分离及migrate使用(七)
May 04 PHP
Yii基于CActiveForm的Ajax数据验证用法示例
Jul 14 PHP
php实现登陆模块功能示例
Oct 20 PHP
thinkPHP实现的联动菜单功能详解
May 05 PHP
PHP Post获取不到非表单数据的问题解决办法
Feb 27 PHP
PHP实现redis限制单ip、单用户的访问次数功能示例
Jun 16 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 函数中使用static的说明
2012/06/01 PHP
php中存储用户ID和密码到mysql数据库的方法
2013/02/06 PHP
提高PHP编程效率的方法
2013/11/07 PHP
php强制文件下载而非在浏览器打开的自定义函数分享
2014/05/08 PHP
PHP-FPM运行状态的实时查看及监控详解
2016/11/18 PHP
PHP 计算至少是其他数字两倍的最大数的实现代码
2020/05/26 PHP
js判断FCKeditor内容是否为空的两种形式
2013/05/14 Javascript
3分钟写出来的Jquery版checkbox全选反选功能
2013/10/23 Javascript
Javascript 多物体运动的实现
2014/12/24 Javascript
Javascript中this关键字的一些小知识
2015/03/15 Javascript
JavaScript和JQuery的鼠标mouse事件冒泡处理
2015/06/19 Javascript
jquery操作select元素和option的实例代码
2016/02/03 Javascript
基于jQuery实现表格内容的筛选功能
2016/08/21 Javascript
详解vue渲染函数render的使用
2017/12/12 Javascript
Vue 组件(component)教程之实现精美的日历方法示例
2018/01/08 Javascript
详解node.js中的npm和webpack配置方法
2018/01/21 Javascript
React 无状态组件(Stateless Component) 与高阶组件
2018/08/14 Javascript
ES6 Set结构的应用实例分析
2019/06/26 Javascript
Vue.js桌面端自定义滚动条组件之美化滚动条VScroll
2020/12/01 Vue.js
[54:53]2014 DOTA2国际邀请赛中国区预选赛 LGD-GAMING VS CIS 第二场
2014/05/23 DOTA
使用Python解析JSON数据的基本方法
2015/10/15 Python
python3音乐播放器简单实现代码
2020/04/20 Python
python找出完数的方法
2018/11/12 Python
python实现视频分帧效果
2019/05/31 Python
如何在Cloud Studio上执行Python代码?
2019/08/09 Python
Python集合基本概念与相关操作实例分析
2019/10/30 Python
python中remove函数的踩坑记录
2021/01/04 Python
python实现学生信息管理系统源码
2021/02/22 Python
使用canvas实现黑客帝国数字雨效果
2020/01/02 HTML / CSS
Space NK英国站:英国热门美妆网站
2017/12/11 全球购物
一名女生的自荐信
2013/12/08 职场文书
学雷锋活动总结报告
2014/06/26 职场文书
大学毕业生自我评价
2015/03/02 职场文书
幼儿园教师工作总结2015
2015/04/02 职场文书
CSS3实现模糊背景的三种效果示例
2021/03/30 HTML / CSS
Zabbix对Kafka topic积压数据监控的问题(bug优化)
2022/07/07 Servers