1.首先肯定得有个阿里云服务器,楼主是用来自己测试用得,所以就买了个1年得突发性实例,虽然网上都说别买这种,不过个人测试还是没有多少要求得

2.买了服务器之前可以顺带买个域名,再顺带去备案一下,阿里云里面就有链接,已备后续有用,你申请域名的时候需要本人的身份证,接下去他会免费寄给你幕布,拍个照传上去就可以了,不过就是要等很久就是了

3.要求不高,所以用宝塔安装环境,首先得安装宝塔

4.宝塔安装可以去宝塔官网,用远程连接软件连接服务器,楼主用得Xshell,连接之后直接复制宝塔安装命令即可,由于是服务器,不用文档后续的挂载磁盘操作,然后用提供的地址+账号密码登陆即可

5.登陆宝塔之后,会提示你想安装哪一种环境,选择LNMP

6.安装完LNMP,之后来安装tp5.1,进入官网之后,需要先装composer,楼主用的国外的网站链接,然后复制安装tp的命令运行即可,自动装的5.1.35版本

7.在宝塔界面设置tp框架的站点,网站-添加站点-如果没有域名就用服务器的ip当作需要填入的域名,根目录选择tp根目录,点确定。在进入刚设置的站点右侧的设置,设置网站目录,运行目录选择为public

8.到第7步位置,直接访问服务器ip,就能显示tp的入口页面了

9.接下来测试访问ip+路由访问页面。在index模块下创建一个view目录,再创建一个index文件夹,再其中创建一个index.html,稍微写一点内容进去。进入controller中的Index.php,按照tp官网的说法,use think\Controller可用可不用,还是用一下吧,再继承一下Controller,在index方法中return view(),渲染默认模板输出。

10.再次访问服务器ip,如果提示提示页面错误!请稍后再试~或者其他错误,需要开启tp的debug,在config中的app.php中,debug=>true,再刷新页面再看报错内容

11.会有一个mkdir(): Permission denied的报错,将runtime的权限改成777

12.此时再次访问服务器ip就能看到上面创建的index.html的内容了,但是如果在ip后加入index/index这个路由的话,还是会报404的错误,这是因为nginx不支持pathinfo,需要手动开启一下

13.手动在网站站点的设置-配置文件中加入一下代码

location / { #第一部分 起始
try_files $uri $uri/ /index.php$uri;
#下面这两个if是为了能获取$_GET参数,不加则无法获取
if ( -f $request_filename) {
break;
}
if ( !-e $request_filename) {
rewrite ^(.*)$ /index.php/$1 last;
break;
}
} #第一部分 结束

location ~ /\.ht { #第二部分 起始
deny all;
} #第二部 结束

#START-PHP
location ~* \.php(.*)$ {
root /www/tp5/public/;#这是tp的入后文件所在,需要根据实际手动改
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_split_path_info ^((?U).+\.php)(/?.+)$; #第三部分 起始
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info; #第三部分 结束
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

14.加入以上代码之后,在宝塔界面的软件管理中,重启nginx,在用ip+路由的方式访问,现在也能够访问的index.html的内容了。

15.相关操作的文件路径,可以在宝塔界面的安全按钮的界面中看,任何操作都有会记录,会有相关的文件地址

由于楼主也是新手,各位大佬见谅,相关tp开发问题后续看情况了,主要还是给自己看的,上面步骤是针对宝塔安装的环境,谢谢

16.在tp框架下的config的app.php中开始app_debug和url_route_must,在对面控制器下创建好模板,在route.php中设置一个路由即可通过路由访问,例如Route::rule("admin/index","admin/Index/index");这是开启强制路由了,每次访问之前都要配置路由,不过tp5.1默认是开启路由了的,不开启强制路由也没关系

阿里云服务器+宝塔环境+LNMP+tp5.1安装和调试的更多相关文章

  1. 在阿里云服务器上(centos 8) 安装自己的MQTT服务器 (mosquitto)

    layout: post title: 在阿里云服务器上(centos 8) 安装自己的MQTT服务器 (mosquitto) subtitle: date: 2020-3-2 author: Dap ...

  2. 阿里云服务器Node环境配置

    最近,将网站的阿里云服务器迁移到阿里云北京机房,记录下CentOS的迁移过程. 首次登录云服务器,要先进行用户设置. 用户设置 首先用passwd命令修改超级管理员root密码. $ passwd 根 ...

  3. 阿里云服务器centos7环境下安装xampp后,mysql有进程,但是却没有监听3306端口

    配置阿里云服务器centos7中xampp环境时出现了一种情况: 在centos中可以使用命令进入mysql 修改后也可以远程用phpmyadmin连接mysql 但是用navicat却无法连接 先修 ...

  4. 阿里云服务器CentOS 5.7(64位)安装配置LAMP服务器(Apache+PHP5+MySQL)

    一.快速安装Apache+PHP5+MySql ----------------------------------------------------- 补充:由于163的yum源上只有php5.1 ...

  5. 阿里云服务器(windows server2008)下安装SVN----杜恩德

    我想说的是如何在阿里云上建立SVN版本,供外网访问,上传代码 在阿里云服务器上安装svn与在本地安装是一样的, ----参考 http://blog.csdn.net/m0_37027631/arti ...

  6. 阿里云服务器php环境的搭建

    1 sudo apt-get update 更新源 sudo apt-get install apache2##################备注:如果这时候发现无法访问公网ip, 请去配置阿里云后 ...

  7. 一、使用Navicat连接阿里云服务器宝塔面板里创建的数据库

    一.数据库配置连接  (通过新增用户的方式)

  8. 阿里云服务器CentOS7.3上通过Docker安装MySQL

    一.前言 我的服务器环境: CentOS7.3 Docker Portainer -> Docker可视化界面工具 二.拉取mysql镜像 这里我安装的是mysql5.7版本 docker pu ...

  9. 阿里云服务器centos5.10安装lamp环境

    ==相关命令== 查看linux版本:cat /etc/redhat-release ==配置修改== 一.Apache配置 ------------------------------------- ...

随机推荐

  1. flutter Row里面元素居中显示

    直接上代码: new Expanded( flex: , child: new Row( children: <Widget>[ Expanded( child: new Containe ...

  2. idea 断点调试

    一.步骤控制 二.查看变量 IDEA debug查看变量值有3种方法: 1.鼠标悬浮 2.alt+f8快捷键(选中变量表达式,比如匿名变量或方法参数,再按atl+f8,接着回车) 3.debug窗口查 ...

  3. 【项目管理】git和码云的使用

    缘起 说了那么多关于git和码云相关的事,一直都没给大伙讲解这个码云究竟是个啥玩意儿. 今天就给大伙说说如何通过git和码云搭建属于自己的代码库. 码云 码云(Git@OSC)是开源中国社区团队推出的 ...

  4. jquery中的ajax方法

    $.ajax()方法详解 jquery中的ajax方法参数总是记不住,这里记录一下. 1.url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. 2.type: 要求为Strin ...

  5. asp.net --- Menu控件\CSS 和样式

    几乎 Menu 控件外观的各个方面都可以使用 Menu 控件的属性或级联样式表 (CSS) 来管理.通过了解哪些属性控制呈现的哪些方面,可以定制菜单的外观.本主题介绍由 Menu 控件公开的样式类型, ...

  6. python 使用exchange发送邮件(三)

    FYI: https://blog.csdn.net/LeoForBest/article/details/79429955

  7. Matlab 之meshgrid, interp, griddata 用法和实例(转)

    http://blog.sina.com.cn/s/blog_67f37e760101bu4e.html 实例结果http://wenku.baidu.com/link?url=SiGsFZIxuS1 ...

  8. 终于明白为什么要赋值给ret ,

    def my_max(a,b): if a > b: return a else: return b my_max(10,45)# 如果只是这样,那么只是运行了并产生返回值,但没有打印返回值t ...

  9. 【Alpha】Daily Scrum Meeting 集合贴

    coding:https://git.coding.net/hmCoding/LearnTGP.git 11月14日:http://www.cnblogs.com/polk-blogs/p/78270 ...

  10. JavaScript创建对象的6种方式

    JavaScript创建对象简单的说,无非就是使用内置对象(Object)或各种自定义对象,当然还可以用JSON,但写法有很多种,也能混合使用. 1.对象字面量的方式 person = {name : ...