最近在研究一个基于YII2的框架,原本我以为很简单,但没想到在第一步环境配置和实例化上就卡了我4个小时,这里分享出我走过的弯路和解决问题的整个流程。

关注我文章的朋友应该了解过,我之前学习easyadmin的过程中(点击前往),喜欢用phpstudy(小皮助手)来快速搭建环境,这里分享下我的前期操作。

1.升级php版本

这一步其实很简单,在小皮助手的软件管理中,安装图片上的三个php,其实其中任意一个就行了,但是我怕后续更新后又不支持了,我现在使用的是8.0的版本,这里安装完成后,你还需要到计算机环境变量里去把php路径换成你要使用的php文件路径。

这一步极其重要,关系到后续你cmd指令执行的是哪个php版本的指令。

到这里,php环境就准备完成了,接下来我们来准备数据库。

2.数据库安装(必须5.77以上)

接下来到了下一步,数据库安装,RageFrame框架需要的数据库是5.77以上,我本机的数据库是5.6,我数据库的表单数据不是很多,我选择的是全部保存后直接卸载安装最新版(我是个莫得感情的杀手),这里给出步骤。

因为我mysql5.6是用官网msi来安装的,卸载我只需要打开msi文件,选择下方Remove,一直下一步就可以了(这里图片展示的数据库是安装好的5.8)

点击链接,下载最新mysql5.8的mis文件

https://dev.mysql.com/downloads/installer/

下载后点击安装,一直下一步,设置好密码即可,这是我个人的方法,但在百度的过程中,我也找到了更多方法,这里分享一个最实用的(地址:https://blog.csdn.net/lgm_szsl/article/details/89307930)

Windows上安装MySQL

到网站https://dev.mysql.com/downloads/mysql/下载MySQL数据库

点击 Download 按钮进入下载页面,点击下图中的 No thanks, just start my download. 就可立即下载:

下载完后,我们将 zip 包解压到相应的目录,这里我将解压后的文件夹放在 H:\MyWork\mysql-8.0.11 下。

接下来我们需要配置下 MySQL 的配置文件

打开刚刚解压的文件夹H:\MyWork\mysql-8.0.11 ,在该文件夹下创建 my.ini 配置文件,编辑 my.ini 配置以下基本信息:

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8 [mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=H:\\MyWork\\mysql-8.0.11
# 设置 mysql数据库的数据的存放目录,MySQL 8+ 不需要以下配置,系统自己生成即可,否则有可能报错
# datadir=H:\\MyWork\\mysql-8.0.11\data
# 允许最大连接数
max_connections=20
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

注意:安装目录一定要修改为你要安装的目录;数据的存放目录,MySQL 8+ 不需要datadir=H:\MyWork\mysql-8.0.11\data,系统自己生成即可,否则有可能报错

接下来我们来启动下 MySQL 数据库:

以管理员身份打开 cmd 命令行工具,切换目录

cd H:\MyWork\mysql-8.0.11\bin

初始化数据库:

mysqld --initialize --console

执行完成后,会输出 root 用户的初始默认密码,如:

...
2018-04-20T02:35:05.464644Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: APWCY5ws&hjQ
...

APWCY5ws&hjQ 就是初始密码,后续登录需要用到,你也可以在登陆后修改密码。

输入以下安装命令:

mysqld install

启动输入以下命令即可:

net start mysql

登录 MySQL

当 MySQL 服务已经运行时, 我们可以通过 MySQL 自带的客户端工具登录到 MySQL 数据库中, 首先打开命令提示符, 输入以下格式的命名:

mysql -h 主机名 -u 用户名 -p

如果我们要登录本机的 MySQL 数据库,只需要输入以下命令即可:

mysql -u root -p

按回车确认, 如果安装正确且 MySQL 正在运行, 会得到以下响应:

Enter password:

密码:即输入刚才自动生成的密码即可。

登录成功后你将会看到 Welecome to the MySQL monitor… 的提示语。

然后命令提示符会一直以 mysq> 加一个闪烁的光标等待命令的输入, 输入 exit 或 quit 退出登录。

具体安装教程:http://www.runoob.com/mysql/mysql-install.html

注意

修改默认密码:

当你使用Navicat Premium 12连接数据库时,输入默认密码连接成功后,会自动弹出修改默认密码,这时你输入自己的密码即可。

管理员运行命令提示符:

管理员运行命令提示符时,可能会出现进不去其他盘符的问题,如图所示:

这时,你只需要直接写盘符进入到其他盘符再使用cd操作即可,如图所示:

3.拉取项目到本地

点击链接,到git里去拉取项目

https://github.com/jianyan74/rageframe2.git

拉取到本地后,到phpstudy(小皮助手)中设置项目配置

之后我就套用官方的安装步骤,大家照着来就行

1、克隆

git clone https://github.com/jianyan74/rageframe2.git
2、进入目录 cd rageframe2
3、安装依赖 // (不建议) 如果你只有 php 7.1 也可以忽略版本进行安装 php composer.phar install --ignore-platform-reqs php composer.phar install
4、初始化项目 php init // 然后输入0回车,再输入yes回车
5、配置数据库信息 找到 common/config/main-local.php 并配置相应的信息, 注意要先创建好数据库
6、安装数据库(Mysql5.7及以上) php ./yii migrate/up
7、初始化账号密码,一键创建总管理员账号密码(注意保存) php ./yii password/init
截止到这里就安装完成了,可以去配置站点了,下面(8、9步骤)的都是根据自己实际的情况去执行 8、建议更新第三方扩展包(可选) php composer.phar update
9、Linux 下文件缓存权限授权 Linux 环境下如果是文件缓存去 backend/runtime 目录执行一下 chmod -R 777 cache,不执行可能会造成修改了网站设置缓存不生效的情况 

但在走流程的过程中,我发现cmd又很多指令会报错,这里给出我卡了一小时后终于解决的方法

1.cmd输入php -v查看php版本是否为最新版,不是就检查计算机环境变量,修改后重启就会生效。
2.检查sql数据库是否安装好,同样去计算机环境变量里去看下又没有mysql的变量,没有就添加上去。
3.检查php是否开启了pdo_firebird,没开就开起来

完成步骤后,将项目的目录定到web中的backend文件夹下,并加上伪静态

Options +FollowSymLinks
IndexIgnore */*
RewriteEngine on # if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d # otherwise forward it to index.php
RewriteRule . index.php # Handle Authorization Header
SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

打开网站,如果出现问题403,去项目中的bootstrap.php中加上

Yii::setAlias('@seller', dirname(dirname(__DIR__)) . '/seller');
Yii::setAlias('@user', dirname(dirname(__DIR__)) . '/user');

再试下

出现登录页面即实例化完成。

如果对您有所帮助,欢迎您点个关注,我会定时更新技术文档,大家一起讨论学习,一起进步。

RageFrame学习笔记:环境配置+项目拉取并实例化到本地的更多相关文章

  1. [Struts2学习笔记] -- 环境配置

    在创建好WebProject后,就可以开始进行Struts2的环境配置,可以到Struts2官网下载,本环境使用struts-2.3.24.1版本. 首先导入必要的jar包到WebProject的/W ...

  2. 02-tornado学习笔记-环境配置

    Ubuntu16.04开发环境 1.ubuntu默认root用户没有激活,激活root用户,就要为root用户创建密码   $sudo passwd root   2.修改主机名   $vi /etc ...

  3. Metasploit学习笔记——环境配置

    <Metasploit渗透测试魔鬼训练营>书56页开始配置网络环境,一共五台机器,攻击机换成了自己更常用的kali,配置方法和back track相同. kali(攻击机) 10.10.1 ...

  4. Apollo配置中心拉取,通过单独打包解决 Get config services failed from http://阿里云局域网访问IP:8080/services/config?appId=MyAppId&ip=192.168.145.1 Cause Could not complete get operation

    Apollo配置中心拉取,通过单独打包解决 Get config services failed from http://阿里云局域网访问IP:8080/services/config?appId=M ...

  5. 深度学习主机环境配置: Ubuntu16.04 + GeForce GTX 1070 + CUDA8.0 + cuDNN5.1 + TensorFlow

    深度学习主机环境配置: Ubuntu16.04 + GeForce GTX 1070 + CUDA8.0 + cuDNN5.1 + TensorFlow 最近在公司做深度学习相关的学习和实验,原来一直 ...

  6. golang学习笔记6 beego项目路由设置

    golang学习笔记5 beego项目路由设置 前面我们已经创建了 beego 项目,而且我们也看到它已经运行起来了,那么是如何运行起来的呢?让我们从入口文件先分析起来吧: package main ...

  7. 深度学习主机环境配置: Ubuntu16.04+GeForce GTX 1080+TensorFlow

    接上文<深度学习主机环境配置: Ubuntu16.04+Nvidia GTX 1080+CUDA8.0>,我们继续来安装 TensorFlow,使其支持GeForce GTX 1080显卡 ...

  8. Docker技术入门与实战 第二版-学习笔记-10-Docker Machine 项目-2-driver

    1>使用的driver 1〉generic 使用带有SSH的现有VM/主机创建机器. 如果你使用的是机器不直接支持的provider,或者希望导入现有主机以允许Docker Machine进行管 ...

  9. Scrapy:学习笔记(2)——Scrapy项目

    Scrapy:学习笔记(2)——Scrapy项目 1.创建项目 创建一个Scrapy项目,并将其命名为“demo” scrapy startproject demo cd demo 稍等片刻后,Scr ...

  10. Libgdx游戏学习(1)——环境配置及demo运行

    原文: Libgdx游戏学习(1)--环境配置及demo运行 - Stars-One的杂货小窝 Libgdx游戏是基于Java的一款游戏引擎,可以发布Android,桌面端,Html,IOS等游戏,出 ...

随机推荐

  1. CentOS7环境下编译FFmpeg

    操作系统:CentOS 7.6.1810_x64 ffmpeg版本:4.2.1 ffmpeg是一个功能非常强大的音视频处理工具,很多软件依赖它,这里记录下编译过程,以便后续查阅. ffmpeg官方网址 ...

  2. push竟比concat快上数百倍?记一个concat在十万级数据引发的性能问题

    壹 ❀ 引 公司产品一直在做企业项目研发工具,所以我们自己当然也会用自己的产品去管理公司大小项目,但在此之前,项目管理体验上一直存在一个卡顿问题.比如我刚登录上账号,在项目里随便到处点点到处跳转页面, ...

  3. NC16850 [NOI1998]免费馅饼

    题目链接 题目 题目描述 SERKOI最新推出了一种叫做"免费馅饼"的游戏:游戏在一个舞台上进行.舞台的宽度为W格,天幕的高度为H格,游戏者占一格.开始时游戏者站在舞台的正中央,手 ...

  4. centos7使用repo方式安装zabbix4.0

    1.安装zabbix的repo源 rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbi ...

  5. New Questions

    1. C++/Qt 实现一个信号槽 #include <functional> #include <iostream> #include <vector> clas ...

  6. git回退至指定版本,并更新远程仓库

    1. git log   查到commit记录 2.复制 commit 后面的id 3. git reset --hard  commit 后面的id   // 回退 4. 强制更新远程仓库  git ...

  7. 在SpringBoot中实践AOP编程

    具体实践 Spring AOP是Spring框架中一个支持实现面向切面编程的模块,由于Spring Boot已经把Spring框架组合得非常好用,所以在基于Spring Boot框架的项目中实现AOP ...

  8. docker中container相关命令

    1.以tomcat镜像为例运行tomcat容器(运行tomcat实例) docker run tomcat 2.宿主机端口与容器端口进行映射 -p docker run -p 8080(系统上外部端口 ...

  9. 【Azure 应用服务】PHP项目部署到App Service for Linux环境中,如何修改上传文件大小的限制呢?

    问题描述 PHP项目部署到App Service for Linux环境中,如何修改上传文件大小的限制呢? 问题解答 经过查询Azure App Service官方文档,可能通过在项目根目录下添加.h ...

  10. C# 课堂管理系统(火影忍者界面!!!)

    1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 usin ...