在云虚拟主机部署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 相关文章推荐
Windows下的PHP5.0安装配制详解
Sep 05 PHP
ADODB类使用
Nov 25 PHP
Search File Contents PHP 搜索目录文本内容的代码
Feb 21 PHP
PHP 文件上传全攻略
Apr 28 PHP
rrmdir php中递归删除目录及目录下的文件
May 15 PHP
php函数serialize()与unserialize()用法实例
Nov 06 PHP
jQuery+PHP发布的内容进行无刷新分页(Fckeditor)
Oct 22 PHP
Yii2 rbac权限控制之rule教程详解
Jun 23 PHP
PHP载入图像imagecreatefrom_gif_jpeg_png系列函数用法分析
Nov 14 PHP
PHP7多线程搭建教程
Apr 21 PHP
利用PHPExcel实现Excel文件的写入和读取
Apr 26 PHP
记Laravel调用Gin接口调用formData上传文件的实现方法
Dec 12 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
Adodb的十个实例(清晰版)
2006/12/31 PHP
PHP写的求多项式导数的函数代码
2012/07/04 PHP
PHP反向代理类代码
2014/08/15 PHP
DWZ+ThinkPHP开发时遇到的问题分析
2016/12/12 PHP
用Laravel Sms实现laravel短信验证码的发送的实现
2018/11/29 PHP
PHP自定义错误处理的方法分析
2018/12/19 PHP
纯js实现的论坛常用的运行代码的效果
2008/07/15 Javascript
MultiSelect左右选择控件的设计与实现介绍
2013/06/08 Javascript
jQuery图片轮播滚动切换代码分享
2020/04/20 Javascript
javascript中eval解析JSON字符串
2016/02/27 Javascript
jQuery获取元素父节点的方法
2016/06/21 Javascript
解析ajaxFileUpload 异步上传文件简单使用
2016/12/30 Javascript
jQuery的中 is(':visible') 解析及用法(必看)
2017/02/12 Javascript
详解webpack + react + react-router 如何实现懒加载
2017/11/20 Javascript
Vim快速合并行及vim 将文件所有行合并到一行
2017/11/27 Javascript
JavaScript中变量提升与函数提升经典实例分析
2018/07/26 Javascript
使用Vue调取接口,并渲染数据的示例代码
2019/10/28 Javascript
用smtplib和email封装python发送邮件模块类分享
2014/02/17 Python
使用Python编写Linux系统守护进程实例
2015/02/03 Python
Python函数返回值实例分析
2015/06/08 Python
单利模式及python实现方式详解
2018/03/20 Python
python3 requests中使用ip代理池随机生成ip的实例
2018/05/07 Python
Python字典创建 遍历 添加等实用基础操作技巧
2018/09/13 Python
Python3 单行多行万能正则匹配方法
2019/01/07 Python
python 哈希表实现简单python字典代码实例
2019/09/27 Python
matplotlib设置颜色、标记、线条,让你的图像更加丰富(推荐)
2020/09/25 Python
python 解决Windows平台上路径有空格的问题
2020/11/10 Python
css3实例教程 一款纯css3实现的发光屏幕旋转特效
2014/12/07 HTML / CSS
Booking.com西班牙:全球酒店预订
2018/03/30 全球购物
Stubhub英国:购买体育、演唱会和剧院门票
2018/06/10 全球购物
2014自荐信的写作技巧
2014/01/28 职场文书
个人租房协议书(范本)
2014/10/14 职场文书
涉外离婚协议书怎么写
2014/11/20 职场文书
MySQL数据迁移相关总结
2021/04/29 MySQL
Python 类,对象,数据分类,函数参数传递详解
2021/09/25 Python
MySQL中order by的使用详情
2021/11/17 MySQL