GlusterFS集群文件系统
http://blog.csdn.net/liuaigui/article/details/17331557
http://blog.csdn.net/liuaigui/article/details/17331557
我们是这样处理的,在config/application.config.php 中加入如下代码
1 2 3 4 5 6 7 8 9 10 11 12 |
return array( 'module_listener_options' => array( 'config_glob_paths' => array('config/autoload/{*}.php'), 'module_paths' => array('./module', './vendor'), /*系统配置信息缓存设置*/ 'config_cache_enabled' => true, 'config_cache_key' => md5('config'.__FILE__), 'module_map_cache_enabled' => true, 'module_map_cache_key' => md5('module_map'.__FILE__), 'cache_dir' => "./data/cache/modulecache", ) ); |
其中注释下面的是添加内容,因为我这个文件把其他内容都提出去了,所以只放了这点内容,根据你的情况加入相关内容即可。需要注意的是
./data/cache/modulecache 这个目录必须存在,如果不存在请手动创建。
另外
1 |
'config_cache_key' => md5('config'.__FILE__), |
1 |
'module_map_cache_key' => md5('module_map'.__FILE__), |
这两句中,后面之所以使用名称+__FILE__方式来计算MD5值,是出于迁移考虑,当从一个空间迁移入另一个空间时,会自行生成适应该环境的新配置缓存文件。如果只是写入固定值时,当配置的缓存信息,除非你手动删除,或者是变更了缓存文件名称,否则不会生成新内容。
当项目中存在有多个layout情况下的时候(这种情况蛮多的,前台后台这就是两个了)。
我们假设后台使用的是默认layout,那么前台我是这样处理的,写在module.php文件中
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
public function onBootstrap($e) { $app = $e->getParam('application'); $app->getEventManager()->attach('dispatch', array($this, 'setLayout')); } public function setLayout($e) { $matches = $e->getRouteMatch(); $controller = $matches->getParam('controller'); if (false === strpos($controller, __NAMESPACE__)) { return; } $viewModel = $e->getViewModel(); $viewModel->setTemplate('site/layout'); } |
这样是可以使用当前设置的layout了,假如我在这个模块的下面的页面显示中想通过ajax调用其中的一个Action显示,只显示对应的模板内容,而不显示layout,我们该如何做呢。
可能你会说,使用如下代码
1 2 3 4 5 6 |
$viewModel = new ViewModel(); $viewModel->setTerminal(true); $array = array(); ………… return $viewModel->setVariables($array); |
这在系统中只有一个默认layout下是没问题的,当时超过一个的时候,怎么设置都无法禁止layout的显示,也许是我的方法不对或者是其他原因吧。既然不管用,我们该如何处理呢?
回到最上面的代码,我们需要做一下修改(module.php文件中的),将
1 2 |
$viewModel = $e->getViewModel(); $viewModel->setTemplate('site/layout'); |
修改为
1 2 3 4 5 6 |
$viewModel = $e->getViewModel(); if($e->getRequest()->isXmlHttpRequest()) { $viewModel->setTerminal(true); } else { $viewModel->setTemplate('site/layout'); } |
这是什么意思呢,当有ajax请求时,禁用layout,然后[……]
http://wiki.ubuntu.org.cn/Nginx
http://wiki.ubuntu.org.cn/%E6%BA%90%E5%88%97%E8%A1%A8
3月9日,我们为DBShop V0.9 Release版本加入了一个对于DBShop未来很重要的一个功能:在线系统更新功能,详细信息请查看这里
这是我们跨出的第一步,以后将加入更多和在线处理相关的更多功能,以方便使用者的维护与优化。系统使用者大部分不是程序员,也不懂程序。对于他们来说,哪怕修改一句代码,都是非常困难的。所以我们未来的目标是使用者能不需要修改代码的地方都不需要修改代码。
chdir — 改变目录
chroot — 改变根目录
dir — directory 类
closedir — 关闭目录句柄
getcwd — 取得当前工作目录
opendir — 打开目录句柄
readdir — 从目录句柄中读取条目
rewinddir — 倒回目录句柄
scandir — 列出指定路径中的文件和目录
basename — 返回路径中的文件名部分
chgrp — 改变文件所属的组
chmod — 改变文件模式
chown — 改变文件的所有者
clearstatcache — 清除文件状态缓存
copy — 拷贝文件
delete — 参见 unlink() 或 unset()
dirname — 返回路径中的目录部分
disk_free_space — 返回目录中的可用空间
disk_total_space — 返回一个目录的磁盘总大小
diskfreespace — disk_free_space() 的别名
fclose — 关闭一个已打开[……]
DBShop V0.9 Release 2014.02.16 更新记录
————————————————-
修正 前台分类推荐商品中的title标记对应的名称编写错误问题
修正 新注册会员发送欢迎信息内容中的email标记没有被替换问题
修正 后台客户设置中的欢迎和注册协议内容,将内容中的双引号替换为单引号,双引号情况下无法正常保存
修正 后台客户设置中,当没有上传新头像,点击保存设置操作,原默认头像路径出错问题
修正 没有设置市场价格时,有规格属性的商品,前台规格切换出错
修正 在php5.4环境下,前台首页的路由地址出现错误无法访问的问题
修正 前台会员登录后,后台删除该会员,会员在购物车和会员中心时,会自动退出登录
修正 系统安装后,后台首页显示的更新时间为安装时间,应为系统功能的实际更新时间
修正 后台订单打印页面,点击打印按钮无法进入打印操作
改进 后台商品编辑销售规格的价格和库存可以为0
改进 验证码输出的json数据中取消验证码字符串输出,防止机器人注册
改进 后台没有添加品牌内[……]
DBShop自RC 20140125版本开始,每次版本发布,都将提供支持PHP5.3.3+环境和PHP5.4环境的两个安装包,为PHP更高环境的使用者提供方便。
此版本将为农历年前发布的最后一个版本
DBShop V0.9 RC 2014.01.25 更新记录
————————————————-
修正 安装完成后,浏览首页广告不显示,后台从新编辑才显示的问题
修正 发送给买家的消息提醒无论是成功的还是失败的,都显示失败
修正 繁体安装后,后台货币设置页面错误
修正 前台商品详情页面商品评价会员头像显示问题
修正 后台通过编辑器编辑的表格在前台显示不正常
改进 前台商品详情页面商品内容中图片异步载入,防止图片过多加载缓慢
改进 订单提交成功提示页面,查看详情直接进入对应的订单列表
改进 前台商品详情页面在参数、内容、评价切换栏右侧放入添加购物车按钮
改经 前台商品详情页面内容超过2屏时,参数、内容、评价栏自动置顶
改进 当购物车第二步没有支付方式或配送方式可选时,不能提交订单
新增 会员中心首页
新增 分类推荐商品功能
下载地址:http://bbs.dbshop.net/forum.php?mod=viewthread&tid=[……]
本次版本主要修改内容如下:
修正 后台不同管理组管理员登录时,导航处总显示 管理员
修正 调整邮件发送基类,当邮件服务关闭时,对客户发送的邮件标记为失败记录,之前是显示发送成功
修正 系统安装过程中,远程数据库连接无法正常安装问题
修正 删除多余备份文件
修正 前台商品详细页面,在后台设置规格保存后,如果再次编辑取消规格然后保存,前台显示您已选择文字。应该不显示
修正 后台商品添加编辑页面,多图上传,在多人同时操作时可能导致图片显示混淆,图片丢失
修正 前台商品详情中商品货号显示
修正 后台添加商品时,属性设置,当为多选且显示内容为中文时,前台显示时,最后的文字为乱码
修正 后台商品属性为文本框或者文本域时,在添加或编辑商品时选择对应属性组不显示对应类型
修正 前台首页商品分类显示,单个分类名称必须在一行显示而不折行
修正 后台导航设置,当把已经存在的导航变换位置时,前台原有位置的信息仍然存在
修正 前台商品详细页面,多规格商品切换时,商品货号不切换
修正 前台商品详细页面,点击购买商品后,顶部导航条的购物车不显示新增后的商品数量
修正 对于前台商品搜[……]
DBShop的最佳环境是 Linux + Apache + MySql(5.1+) +Php(5.3.23+)
本次搭建的环境是在 Ubuntu 12 版本(64位)上进行的。
1、升级软件包(其实这步可做可不做)
1 2 |
sudo apt-get update sudo apt-get dist-upgrade |
2、安装MySql
1 |
sudo apt-get install mysql-server |
安装过程中会叫你输入root用户密码,并确认
3、安装Apache
1 |
sudo apt-get install apache2 |
4、安装 php及相应模块
1 2 3 4 5 6 |
sudo apt-get install php5 sudo apt-get install php5-mysql sudo apt-get install php5-gd sudo apt-get install libapache2-mod-auth-mysql sudo apt-get install libapache2-mod-php5 sudo apt-get install curl libcurl3 libcurl3-dev php5-curl |
6、安装phpmyadmin
1 2 3 |
sudo apt-get install phpmyadmin cd /var/www sudo ln -s /usr/share/phpmyadmin |
安装的过程中,需要输入mysql的密码信息。
7、必要配置
环境安装好后,还需要一些必要的配置,DBShop才可以正常运行
开启 Rewrite (重写)模块
1 |
sudo a2enmod rewrite |
用[……]
刚访问test.dbshop.net发现出现的错误页面,ftp看一了一下程序记录的错误日志。少字段!!不会吧,如果发布出去的程序也少字段,就真扯淡了。加入了缺少的字段后,查看首页,多了一些莫名其妙的数据,跟我本地测试的数据很像。仔细回忆了一下,然后打开测试站点的备份目录,真相大白了。原来我在上传测试站点程序的时候,把备份还原的早期文件上传上去了。结果登录后台的朋友肯定是点击导入备份文件了,把我之前的备份数据给导入了。之前的数据库有些字段是没有的,所以就出现了我刚打开看到的错误。
真是虚惊了一场。恢复了测试站点,同时把早期备份文件给删除了。