MoBlog一个基于Yii2的博客系统 [ 2.0 版本 ]
MoBlog
下载
github仓库:https://github.com/mojifan/MoBlog
coding仓库: https://coding.net/u/mojifan/p/MoBlog/git
演示
说明
1.MoBlog是一个基于Yii2开发的博客系统,目前一些功能正在完善
2.数据库设计直接采用typecho
的数据库结构,功能结构也是模仿typecho
3.为了部署到coding演示平台,省掉了yii命令部署方式
安装
1.下载或clone源码,运行composer install
安装依赖
2.导入common/data/blog.sql
文件到数据库,配置common/config/main-local.php
文件中数据库组件
3.配置nginx或apache网站根目录到web
文件夹
4.前台访问index.php
文件,后台访问admin.php
文件
5.后台账号admin
密码123456
协议
MIT
akingsky
注册时间:2012-03-14
最后登录:2017-06-28
在线时长:34小时9分
最后登录:2017-06-28
在线时长:34小时9分
- 粉丝26
- 金钱2065
- 威望30
- 积分2705
热门源码
- 基于 Yii 2 + Bootstrap 3 搭建一套后台管理系统 CMF
- 整合完 yii2-rbac+yii2-admin+adminlte 等库的基础开发后台源码
- 适合初学者学习的一款通用的管理后台
- yii-goaop - 将 goaop 集成到 Yii,在 Yii 中优雅的面向切面编程
- yii-log-target - 监控系统异常且多渠道发送异常信息通知
- 店滴云1.3.0
- 面向对象的一小步:添加 ActiveRecord 的 Scope 功能
- Yii2 开源商城 FecShop
- 基于 Yii2 开发的多店铺商城系统,免费开源 + 适合二开
- leadshop - 基于 Yii2 开发的一款免费开源且支持商业使用的商城管理系统
共 24 条评论
后台登录不了,密码错误!
在线演示的密码改了
此源码不错......
博客前台的模板方便说一下..我发觉太多缺的了.看自己能不能补全一下..
什么意思?前台模板是扒的多说的博客
@akingsky: 好..谢谢啦.
不错,可以使用。后台密码:123456
小编你好,composer install怎么弄啊!我是小白,不会呀!麻烦你教我弄一下,谢谢!
就是你装一个composer,然后在根目录下面,运行composer命令就可以了。
整个框架和原来的不太一样,楼主做了一些修改,对于我这种新手来说,还是有一点吃力啊。
访问后台管理页admin.php的时候,自动跳转到
http://localhost/MoBlog/web/admin.php/site/login
然后提示404,有人知道怎么解决么?给点提示吧
不好意思这种目录情况没有处理 ,最好是将apache /nginx 的web根目录 设置到moblog/web目录 下 然后localhost/admin.php这样访问,
同样的错误,访问localhost/admin.php 自动跳转到
http://localhost/MoBlog/web/admin.php/site/login
,然后提示404。。。@dzgrief 可否贴一下 nginx/apache的配置
@akingsky
server { listen 8080; server_name localhost; root /home/wwwroot/MyBlog/web; index index.php index.html index.htm; location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location / { try_files $uri $uri/ /index.php?$args; } } }
@dzgrief location /admin.php {
try_files $uri $uri/ /admin.php?$args; } 添加一下这个就ok了
@akingsky
location /admin.php { try_files $uri $uri/ /admin.php?$args; }
这行非常管用。楼主解释问题很负责任。赞。
额,第一次用Yii。。
可否说下路由规则在哪里定义啊。
如果要自定义路由规则 是在配置文件 urlManager 组件 rules属性
撰写新文章时报错啊:
The file or directory to be published does not exist: D:\wamp\www\blog/vendor\npm/bootstrap-markdown
我bootstrap-markdown是通过composer下载的,你的bootstrap-markdown下载失败?composer update更新一下试试
@akingsky 同样错误唉 我本地apache是好的 线上是lnmp环境就报这个404
配置一下nginx就可以了,因为我的代码里只用.htaccess 配置的apache rewrite nginx要自己配置 看这里nginx的配置 http://apidoc.yii2.cn/guide-start-installation.html
gii无法使用
配置一下ip
index.php 配置
defined('YII_DEBUG') or define('YII_DEBUG', true);
defined('YII_ENV') or define('YII_ENV', 'dev');
main-local.php 配置
if (YII_ENV_DEV) { $config['bootstrap'][] = 'debug'; $config['modules']['debug'] = [ 'class'=>'yii\debug\Module', 'allowedIPs'=>['127.0.0.1','192.168.0.*'], ]; $config['bootstrap'][] = 'gii'; $config['modules']['gii'] = [ 'class'=>'yii\gii\Module', 'allowedIPs'=>['127.0.0.1','192.168.0.*'], ]; }
浏览器访问
http://localhost/master/web/index.php?r=gii
还是在首页,没有跳到gii页面
就是不行啊,我下载原版的配置就可以用,为什么呢?
@lgd5555 我配置了url 路由, http://localhost/master/web/gii 这样访问呢?
@akingsky 囧,这样可以了,谢谢!如果改这个路由规则在什么地方修改呢,我想前台和后台是分开的
@lgd5555 路由规则在配置文件里修改啊,如果想前后台分开 那就把web目录的,index.php admin.php 分开到不同目录,然后修改文件里面的引用路径就可以了
@akingsky 好的,多谢啦!
配置一下ip
在使用日期控件或编辑器控件时会报错
Class 'yii\jui\DatePicker' not found
这个控件实在web\vendor 下面的,是不是要更改什么设置才可以?
我没用jui的日期控件,我用的自己其他控件
发布文章时,分类的文章数BUG。
我先发布了一个文章,选择了默认分类,状态公开,发布后默认分类文章数加
1
,这是正常的,但,当在修改这篇文章时,我同时选择了两个分类,状态还是公开,发布后,另一个分类的文章数是没有变化的
if(isset($changedAttributes['status'])){ $beforeCount=$changedAttributes['status']==static::STATUS_PUBLISH; $afterCount=$this->status==static::STATUS_PUBLISH; }
上面这段代码引起的,楼主只判断了,当文章的发布状态改变时,才给分类加上和减去文章数
数量统计确实有些bug
@akingsky 我把他改成这样就好了
public function afterSave($insert, $changedAttributes) { parent::afterSave($insert, $changedAttributes); if ($this->do == 'save') { $this->saveCategory(false, false); $this->saveTags(false, false); } elseif ($this->do == 'publish') { /* 是否是从草稿状态发布 */ $isDraftToPublish = ($this->getOldAttribute('type') == self::TYPE_DRAFT); /* 以前是否是发布的 */ $isBeforePublish = ($this->getOldAttribute('status') == self::STATUS_PUBLISH); /* 现在是否是发布的 */ $isAfterPublish = ($this->status == self::STATUS_PUBLISH); // 保存文章对应分类 $this->saveCategory(!$isDraftToPublish && $isBeforePublish, $isAfterPublish); // 保存标签 $this->saveTags(!$isDraftToPublish && $isBeforePublish, $isAfterPublish); } }
我是新手,按照步骤来的,访问http://localhost/moblog/web/index.php报错:Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator at admin@example.com to inform them of the time this error occurred, and the actions you performed just before this error.
More information about this error may be available in the server error log.
Apache/2.4.9 (Win32) PHP/5.5.12 Server at localhost Port 80
这是500错误吧,看日志
楼主能发个coding演示的教程嘛, 看了
coding
上的文档不太懂怎么弄?coding演示平台部署教程?
@akingsky 是啊,就是在coding上部署演示,我想把我用yii2写的博客部署到上面去,搞了下没有成功啊
好像撰写文章出错了。。。
看日志。。。
The file or directory to be published does not exist: /home/w/web/moblog/vendor/npm/bootstrap-markdown
这个错误解决方法:
vim vendor/yiisoft/yii2/base/Application.php:458行左右:
将此行注释:
//Yii::setAlias('@npm', $this->_vendorPath . DIRECTORY_SEPARATOR . 'npm');
修改为:
Yii::setAlias('@npm', $this->_vendorPath . DIRECTORY_SEPARATOR . 'npm'. DIRECTORY_SEPARATOR . 'npm-asset');
就是加了个npm-asset子目录。
The file or directory to be published does not exist: /home/w/web/moblog/vendor/npm/bootstrap-markdown
这个错误解决方法:
vim vendor/yiisoft/yii2/base/Application.php:458行左右:
将此行注释:
//Yii::setAlias('@npm', $this->_vendorPath . DIRECTORY_SEPARATOR . 'npm');
修改为:
Yii::setAlias('@npm', $this->_vendorPath . DIRECTORY_SEPARATOR . 'npm'. DIRECTORY_SEPARATOR . 'npm-asset');
就是加了个npm-asset子目录。
bower报错了,用类似的方法:
The file or directory to be published does not exist: /home/w/web/moblog/vendor/bower
这个错误解决方法:
vim vendor/yiisoft/yii2/base/Application.php:456行左右:
将此行注释:
//Yii::setAlias('@bower', $this->_vendorPath . DIRECTORY_SEPARATOR . 'bower');
修改为:
Yii::setAlias('@bower', $this->_vendorPath . DIRECTORY_SEPARATOR . 'bower' . DIRECTORY_SEPARATOR . 'bower-asset');
就是加了个bower-asset子目录。
如果这样改还不生效,要自己手动检查下composer安装markdown等后创建的目录。
[root@localhost moblog]# composer update Loading composer repositories with package information Updating dependencies (including require-dev) Your requirements could not be resolved to an installable set of packages. Problem 1 - The requested package npm-asset/bootstrap-markdown could not be found in any version, there may be a typo in the package name. Problem 2 - The requested package npm-asset/markdown could not be found in any version, there may be a typo in the package name. Problem 3 - yiisoft/yii2 2.0.7 requires bower-asset/jquery 2.2.*@stable | 2.1.*@stable | 1.11.*@stable -> no matching package found. - yiisoft/yii2 2.0.6 requires bower-asset/jquery 2.1.*@stable | 1.11.*@stable -> no matching package found. - yiisoft/yii2 2.0.5 requires bower-asset/jquery 2.1.*@stable | 1.11.*@stable -> no matching package found. - yiisoft/yii2 2.0.4 requires bower-asset/jquery 2.1.*@stable | 1.11.*@stable -> no matching package found. - yiisoft/yii2 2.0.3 requires bower-asset/jquery 2.1.*@stable | 1.11.*@stable -> no matching package found. - yiisoft/yii2 2.0.2 requires bower-asset/jquery 2.1.*@stable | 1.11.*@stable -> no matching package found. - yiisoft/yii2 2.0.1 requires bower-asset/jquery 2.1.*@stable | 1.11.*@stable -> no matching package found. - yiisoft/yii2 2.0.0 requires bower-asset/jquery 2.1.*@stable | 1.11.*@stable -> no matching package found. - Installation request for yiisoft/yii2 * -> satisfiable by yiisoft/yii2[2.0.0, 2.0.1, 2.0.2, 2.0.3, 2.0.4, 2.0.5, 2.0.6, 2.0.7]. Potential causes: - A typo in the package name - The package is not available in a stable-enough version according to your minimum-stability setting see <https://getcomposer.org/doc/04-schema.md#minimum-stability> for more details. Read <https://getcomposer.org/doc/articles/troubleshooting.md> for further common problems.
这个包是不是该更新了还是我的环境有问题啊
包应该没问题,你用composer install试试
由于无法使用composer完成依赖安装,所以我解决了依赖后新建了一个版本库,供大家使用。https://github.com/kunx-edu/moblog
另附上解决依赖的步骤:
拷贝yii2离线安装包中的vendor到moblog的根目录
修改moblog/web/admin.php中的调试模式为true
根据提示中的内容去github上搜索所需要的包,markdown的包是在npm网站找到的github地址。
F:\xxx\www\yii_blog>composer install You are running composer with xdebug enabled. This has a major impact on runtime performance. See https://getcomposer.org/xdebug Loading composer repositories with package information Installing dependencies (including require-dev) from lock file Warning: The lock file is not up to date with the latest changes in composer.jso n. You may be getting outdated dependencies. Run update to update them. Your requirements could not be resolved to an installable set of packages. Problem 1 - Installation request for fxp/composer-asset-plugin v1.0.0-beta4 -> satisfi able by fxp/composer-asset-plugin[v1.0.0-beta4]. - fxp/composer-asset-plugin v1.0.0-beta4 requires composer-plugin-api 1.0.0 -> no matching package found. Problem 2 - Installation request for yiisoft/yii2-composer 2.0.3 -> satisfiable by yii soft/yii2-composer[2.0.3]. - yiisoft/yii2-composer 2.0.3 requires composer-plugin-api 1.0.0 -> no match ing package found. Problem 3 - yiisoft/yii2-composer 2.0.3 requires composer-plugin-api 1.0.0 -> no match ing package found. - yiisoft/yii2 2.0.3 requires yiisoft/yii2-composer * -> satisfiable by yiis oft/yii2-composer[2.0.3]. - Installation request for yiisoft/yii2 2.0.3 -> satisfiable by yiisoft/yii2 [2.0.3]. Potential causes: - A typo in the package name - The package is not available in a stable-enough version according to your min imum-stability setting see <https://getcomposer.org/doc/04-schema.md#minimum-stability> for more det ails. Read <https://getcomposer.org/doc/articles/troubleshooting.md> for further commo n problems.
我表示身体被掏空,最顶上的同志,you are not alone.
@akingsky 求博主答疑
@scofield 解决了·····
请问是如何解决的?
@38385 像你这种既然解决,就提供解决方案,你这样对大家有什么实质性帮助么?是炫耀吧
由于无法使用composer完成依赖安装,所以我解决了依赖后新建了一个版本库,供大家使用。https://github.com/kunx-edu/moblog
另附上解决依赖的步骤:
拷贝yii2离线安装包中的vendor到moblog的根目录
修改moblog/web/admin.php中的调试模式为true
根据提示中的内容去github上搜索所需要的包,markdown的包是在npm网站找到的github地址。