作者:小鱼的互联网观察
发布时间:May 12, 2017
分类:互联网观察
自动识别移动客户端,并适配
<script>
var inw = window.innerWidth;
var inh = window.innerHeight;
var o = window.orientation;
var w = window.screen.width;
if((navigator.userAgent.indexOf("iPad") != -1 && o != '0') || (navigator.userAgent.indexOf("iPad") != -1 && inw>inh)){
document.write('<meta content="width=device-width, initial-scale=0.8, maximum-scale=1.0, user-scalable=0" name="viewport">');
}else{
document.write('<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport">');
}
</script>
作者:小鱼的互联网观察
发布时间:March 20, 2017
分类:互联网观察
目前,项目中使用onethink作为管理员后台。上百个表。每个字段都不一样。但又有一样的。
因此,开发了。独立模型复制功能。不必每个模型都创建一次。
目前正在开发模型导出,模型导入。模型自定义函数。
已经完成的,:
模型增加了自定义函数功能。此自定义函数非字段的函数,属于独立模型级别。
增加了字段的 css属性。可以独立设置字段的宽度和css属性。
增加了模型的预览操作。其实就是把模型的edit修改了一下。
尤其是模型导出功能,这样就可以建立某些功能模块,重复再利用了。
随便贴个图。
作者:小鱼的互联网观察
发布时间:March 19, 2017
分类:互联网观察
案例:
[url]/timthumb.php?zc=1&w=100&h=125&src=/Uploads/Picture/2017-03-14/58c7953413213.jpg
或
[url]/timthumb.php?zc=1&w=100&h=125&src=[url]/Uploads/Picture/2017-03-14/58c7953413213.jpg
注意,url 是要带http:// 的哦!
作者:小鱼的互联网观察
发布时间:March 12, 2017
分类:互联网观察
restb 用于回复分表后缀
stb用于数据分辨后缀
fstb用于 附件分表后缀
作者:小鱼的互联网观察
发布时间:March 11, 2017
分类:互联网观察
onethink后台文件上传 成功后返回的是 加密字符串。
使用onethink内置解密函数可以解密
echo think_decrypt(I('file'));
可以看到解密后的数据就是文件上传成功后onethink_file 存储的数据,
{"id":"4","name":"123.txt","savename":"58c2b9eda7708.txt","savepath":"2017-03-10\/","ext":"txt","mime":"application\/octet-stream","size":"61626","md5":"fd95c2c6a71affe07c2b8c23b1ca9f24","sha1":"2086cd85ea61400b5522be83b61af3179b379ed3","location":"0","url":"","create_time":"1489156589","path":"\/Uploads\/Download\/2017-03-10\/58c2b9eda7708.txt"}
根据此ID 就可以 去 onethink_file 找到这个文件的地址了。。
ok !
作者:小鱼的互联网观察
发布时间:March 10, 2017
分类:互联网观察
通常是 web服务器的日志文件。或垃圾文件。
检查以下几个目录:
//查找大文件
du -m --max-depth=1
/var/spool/mail/root
问题:垃圾邮件文件过大。
/www/wdlinux/nginx-1.9.10/logs/
问题:日志文件过大
作者:小鱼的互联网观察
发布时间:March 9, 2017
分类:互联网观察
自定义模型。在菜单中设置链接的时候。
用 Book/index
的形式。参考 系统菜单。
这样左侧菜单就正常了。。。。
onethink小记录。。。。
作者:小鱼的互联网观察
发布时间:March 5, 2017
分类:互联网观察
mysql中的表显示“使用中”解决办法!
方法1:
检查表:CHECK TABLE xxtable
分析表:ANALYZE TABLE xxtable
修复表:REPAIR TABLE xxtable
方法2:如果方法1无法执行,请使用以下语句修复表索引
REPAIR TABLE xxtableUSE_FRM;
作者:小鱼的互联网观察
发布时间:August 3, 2016
分类:互联网观察
onethink 部署到服务器 出现中文乱码
在
Think\Db\Driver.class.php 中 line 103
$this->linkID[$linkNum] = new PDO( $config['dsn'], $config['username'], $config['password'],$this->options);
后面加
$this->linkID[$linkNum]->query('set names utf8');
作者:小鱼的互联网观察
发布时间:August 3, 2016
分类:互联网观察
曾经有个wdcp默认站点的问题让自己纠结了一些时间,当时真是百思不得其解,连叹这不科学,不过好在最后找到了解决办法,下面就分享一下具体的过程。
熟悉wdcp的朋友都知道,在web服务的vhost目录下默认有个00000.default.conf文件,这个文件就是wdcp的默认站点文件,如果使用服务器的外网IP浏览器中访问默认应该打开这个配置文件中的站点才对。
为什么要使用IP访问网站呢
因为要是迁移网站,域名还未解析过,还在指向旧服务器以保证业务不中断,等调试好新服务器上的web站点后再将域名解析也迁过来,这时用IP调试新服务器上的站点就是最好的选择。
那么问题来了,如果添加了几个正常的站点之后,此时会发现使用IP访问到的可能不是默认站点了,可能是已创建好的其它站点了,即使默认站点文件中有此行配置也无济于事。
server_name localhost;
此时,检查配置文件和错误日志都没有明显的错误,反复调试、测试也无法解决,只能怀疑站点一多了,wdcp的默认站点指向就变了,不是之前的00000.default.conf文件了。
没有办法,最后在00000.default.conf的配置文件中增加这个内容,
listen 80 default;
default字符就是手动添加的内容,强制设置此站点为默认站点,重启web服务,问题得到了解决。
作者:小鱼的互联网观察
发布时间:July 29, 2016
分类:互联网观察
今天配置一个nginx的rewrite,简直是被搞死了。其实我就是想把/xxx/0.mp4?key=123456abcde转换为/xxx.mp4?segno=0&key=123456abcde这种形式经过不断的尝试,也分析了一下原因,发现niginx的内容设置中必须注意的一些问题:
1.nginx在进行rewrite的正则表达式中只会将url中?前面的部分拿出来匹配
2.匹配完成后,?后面的内容将自动追加到url中(包含?),如果不让后面的内容追加上去,请在最后加上?即可
3.如果想要?后面的内容时请使用$query_string
在这里提醒一点,调试的时候在rewrite的最后一个配置项中不要使用break last这些,使用redirect可以看到转换后的地址。综合以上几点,使用的配置项为
rewrite ^/(.+)/(\d+)\.mp4$ /$1.mp4?segno=$2&$query_string? last;
作者:小鱼的互联网观察
发布时间:June 14, 2016
分类:互联网观察
修改,thinkcontroller
$map[$key]=array('like','%'.$_GET[$key].'%');
作者:小鱼的互联网观察
发布时间:June 13, 2016
分类:互联网观察
修改 user config 文件
增加:define('DB_CONFIG2', 'mysql://root:[email protected]:3306/xxxx'); // 数据库连接,使用Model方式调用API必须配置此项
修改admin common config 文件
数据库配置增加'DB_CONFIG2'=> 'mysql://root:[email protected]:3306/xxxx', // 数据库连接,使用Model方式调用API必须配置此项
作者:小鱼的互联网观察
发布时间:June 2, 2016
分类:互联网观察
数据函数(http://xcache.lighttpd.net/wiki/XcacheApi)
mixed xcache_get(string name)
bool xcache_set(string name, mixed value [, int ttl])
bool xcache_isset(string name)
bool xcache_unset(string name)
bool xcache_unset_by_prefix(string prefix)
//低版本没有这个函数,使用之前要测试一下
int xcache_inc(string name [, int value [, int ttl]])
//自增函数,value为步长,如果没有初始化,则默认为零,ttl为过期时间
int xcache_dec(string name [, int value [, int ttl]])
//自减函数,同上
注意:xcache不能存放对象、资源等内容。
2、管理函数:
int xcache_count(int type)
//type值定义为宏,返回值为把指定的共享内存分为多少份,见xcache.count配置参数
XC_TYPE_PHP: Cache Type = php opcode XC_TYPE_VAR: Cache Type = variable data array xcache_info(int type, int id)
//返回值:为数组:
array xcache_list(int type, int id)
//返回值:
- array(2) {
- ["cache_list"]=> //缓存列表
- array(78) {
- [0]=>
- array(7) {
- ["size"]=> //大小
- int(107952)
- ["refcount"]=> //引用次数
- int(0)
- ["hits"]=> //命中次数
- int(0)
- ["ctime"]=> //创建时间
- int(1306710407)
- ["atime"]=> //存在时间
- int(1306710407)
- ["hvalue"]=>
- int(1257)
- ["name"]=> //名称
- string(9) "my_var100"
- }
- [1]=> ......
- ["deleted_list"]=> //删除列表
- array(0) {
- }
- }
void xcache_clear_cache(int type, int id)
string xcache_coredump(int op_type)
作者:小鱼的互联网观察
发布时间:May 17, 2016
分类:互联网观察
onethink 是一个优秀的框架,自定义模型可以完成很多功能,但是,每次都要自己重新建立模型,很费劲。
于是,我开发了一个自定义模型的复制功能,可以对任意的模型进行复制,复制后,自动复制模型字段,自动复制模型,自动生成新的模型表。运行无问题。操作便捷,大大提高了开发速度。
原理为:创建模型表,修改表,复制字段,修改字段所属模型,最后修改模型和字段的对应。
效果非常好。效率提升N倍
- 页码:
- «
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- ...
- 17
- »