穿越羌塘无人区3
第21天D21(5-10),20.6K,宿营4809M
大早起,奔向热饭。昨夜雪不厚,中午即化的差不多了,再则也顾不了这么多了。一路下坡,页岩地面,虽对昨夜之人不甚了解,但在这无人区深处遇人总是梦幻之事,脑海里也早已勾勒出一幅豪华营地、肉香汤热的美景,所以趁坡势强行骑车,一不留神车被片岩爆胎。
近五点来到传说中的英雄地,这是上世纪七十年代三大军区联合测绘会师的地方,因而取名英雄地。八十年代,中科院考察队曾横穿至此,因前路恶劣折返,直到本世纪初,中科院与商业联姻,才对羌塘进行了连续三年的大规模科考,羊湖便是最后一条科考线路。
近七点到达羊湖西侧,风暴中终于看见昨夜之车缓缓开来,后一辆卡车,共四人。昨夜说话之人李哥随即给我一杯预备好的热咖啡,感动。大风,冷,车下寒暄片刻便挤上大车。他们极为热情,又狐疑满腹,说没见过这么玩法的,说我一个人肯定带了卫星电话,还检查了证件……而我只想着蹭些补给。大餐不见,豪华营地没有,总得有些香烟。他们也是麻烦一堆,补给不多,最后给了大约三天食物,些许蔬菜和水果,散烟合两包,馕等,见此,觉得自己从未如此富过。这就是前文所说,在前45天食物克制期里意外获得的三天补 ...
穿越羌塘无人区2
第11天D11(4-30),20.4K,宿营5120M
上红山达坂的地面很硬,碎石为主,加上下了一个大坡,今天推行距离在过鲁形湖后首次超过20公里。山口平坦,似一条宽阔山脊,海拔最高5256米。上了平坦山口,海拔6356米土则岗日便映入眼帘了,山顶浑圆,丝毫没有一座雪山的筋骨。羌塘深处的雪山大多如此,在经过数次夷平地质运动后不再有鲜明的棱角。谷地里藏羚羊很多,多是十几只成群。自去年在某河谷里看见迁徙的绵延不绝的超大藏羚羊种群后(可能是近年发现的最大种群),便对这种小型羊群完全没了兴趣。
羌塘的食草动物种群恢复的极快,例如野牦牛、藏羚羊、原羚、鼠兔、旱獭等。深入羌塘深处,你绝不会对突然出现在眼前的藏羚羊感到惊喜,因为太平常了。此季藏羚羊已经公母分群,路上多见带孕的母藏羚羊,公藏羚羊不知迁往何处出了。近年研究,藏羚羊繁育中心不仅只有卓乃湖,整个大羌塘无人区有四个藏羚羊繁育中心,一是卓乃湖,二是兔子湖,三是黑石北湖,还有一个记不清了。我认为,藏羚羊的繁育中心远不止四个,多数种群并没有不可想象的长途迁徙。他们的生育性迁徙大致南北走向,南到中央山脉附近,北到横亘天际的昆仑山脉。
藏羚羊看 ...
穿越羌塘无人区
2010年,一个名叫杨柳松的青年,徒步穿越羌塘,1400公里的无人区,平均海拔5000米,走了77天。
他把这段经历,写成了一本书《北方的空地》。
根据这个故事,拍摄了电影《77天》。
原文8624:北方的空地,孤身穿越大羌塘无人区
羌塘 第二次穿越大羌塘无人区已过三月,期间不少志同道合者询问事宜,今儿便呈一贴,简叙过往。
此次穿越从青藏高原的西端至高点界山大阪开始,时间4月20日,一路向东经邦达错、羊湖、若拉错、岗扎日,横穿整个藏北无人区后改由北上进入阿尔金无人区,经可可西里山脉、昆仑山脉、鲸鱼湖……在阿奇克库勒湖遇人,再三天车程至花土沟镇,时间七月五号,总历时77天。在离开界山大阪至阿奇克库勒湖的74天里独处无人区,此间行程1400公里左右,跨度四个月。
大羌塘藏语“羌塘”意为北方的空地,狭义指藏北无人区,实则是所有北方未知的土地。大羌塘包含藏北无人区、可可西里无人区、阿尔金无人区、昆仑山无人区,这四个无人区连片在一起,构成了世界上独有的超级无人荒原。由于可可西里的概念被炒热,以至于大家一度用可可西里代替了这片广袤的荒原,实际上,可可西里不论是行政疆域还是地理疆域都只是大羌塘这 ...
Yii2 三级联动
项目开发中,我们经常会遇到3级联动选择框。在yii2项目开发中,可以利用 “kartik-v/yii2-widgets” 包,快速实现下拉选择 三级联动功能,十分方便。官方demo
安装包1composer require "kartik-v/yii2-widgets"
views在views中,修改_form.php,
1234567891011121314151617181920212223use kartik\widgets\DepDrop; // Parent echo $form->field($model, 'cat')->dropDownList($catList, ['id'=>'cat-id']); // Child # 1echo $form->field($model, 'subcat')->widget(DepDrop::classname(), [ 'options'=>['i ...
Git使用规范及常用命令
规范[建议] master 分支仅用来发布新版本,不允许在上面开发使用分支能够有效地避免不同开发工作之间的相关干扰。
当需要开发新功能、修复bug、试验新的想法时,应该新建一个分支,待开发工作完成并测试后,再把工作分区合并到主分区上。
[强制] 提交时须带上清晰的描述提交信息格式:
123第一行:一句话简单总结一下你做的修改(别超过50个字)第二行:空行(建议空行)剩余行:详细描述。为什么要做这次改动?跟以前的实现有什么不一样?
[建议] 相关的改动才放在一起提交一次提交(git commit)应该只包含相关的改动。比如说,修复两个不同的bug就应该分开来做两次提交。提交的改动越小(或越少),其他开发者理解起来就越容易;如果改动有问题,退回去也比较方便。Git有一个暂存区域(staging area)的概念,它还允许你暂存文件的某些部分,这更便于你创建非常细粒度的提交。
[建议] 经常性地提交经常提交势必让你每次提交的东西都很少,也有助于你只提交相关的改动。并且,你还能更频繁地与别人共享代码。通过这种方式,所有人在集成代码时都会感觉更轻松,也就能避免一些不必要的冲突。相比之下,如果每 ...
解决Thinkphp3.1不支持PHP7
服务器重装了系统。PHP版本升级为PHP7,结果发现以前用Thinkphp写的一个项目无法运行了。thinkphp版本使用3.1版。切换为PHP5.6版本时,可以正常使用。切换为PHP7时,页面显示空白。追踪框架核心代码,找到核心的模板文件,最终发现是preg_replace函数错误。
查找原因先打开错误提示编辑index.php
12345ini_set('display_errors', '1');error_reporting(E_ALL);define('APP_DEBUG', true); //修改define('APP_ERROR_HANDLE',false);
多处提示
1NOTIC: [2] preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
但这些都不是致命错误。一步一步断点调试,发现最终现象是页面变空白查看模板缓存,只显示如下信息
1<?php if ( ...
安装piwik访问统计工具
Piwik是一个PHP和MySQL的开放源代码的Web统计软件,可以代替Google Analytics。而且支持多语言。通过这个开源产品,可以搭建自己的私有统计平台。其统计基于javaScript的脚本,将该脚本插入到 里头的页面,就可以获取到数据。
Piwik 的安装方式超级简单,可以通过页面指示,一键安装。
百度百科
相关资料官网: https://piwik.org/
在线Demo: demo.piwik.org
Github地址: https://github.com/piwik/piwik
环境要求
PHP5.5.9以上
Mysql 5.5以上
PHP需要安装PDO或者Mysqli扩展
获取代码123git clone https://github.com/piwik/piwik.gitcd piwikcomposer update
composer时可能会出错,需要修改php.iniphp.ini文件中disable_functions去除proc_open,proc_get_status,shell_exec重启php服务service php-fpm restar ...
服务器设置计划任务,定时访问网页
安装crontab123456789101112# 查询是否安装sudo service crond status# yum安装sudo yum install vixie-cronsudo yum install crontabssudo service crond startsudo service crond status# 设置开机启动sudo chkconfig --level 35 crond on
设置计划任务1sudo crontab -e
添加
123# 半小时一次*/30 * * * * /usr/bin/curl http://pangxieke.com/script.php
测试新建script.php
12345<? $fp = fopen("test.txt", "a+"); fwrite($fp, date("Y-m-d H:i:s") . " 成功成功了!\n"); fclose($fp);
监控,查看 script.php文件是否写入成功,写 ...
PHP使用mail函数发送邮件及安装Sendmail服务
在PHP中,常有发送邮件功能。PHP中有mail()函数,可以用来发送邮件。但在本地使用时,我们常发送邮件发送失败。这是因为使用发送邮件功能,需要服务器支持。
在linux上,我们常使用sendmail组件。
php中mail()函数
1bool mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )
安装sendmailYum安装
1yum install sendmail
设置主机名,主机名要设置一个域名格式的,例如:jb51.net
1hostname jb51.net
设置主机名后,需要重启sendmail服务查看sendmail服务状态
12service sendmail statusservice sendmail restart
php配置修改php.ini文件
1vi /usr/local/php/etc/php.ini
配置sendmail_path
1sendmail_ ...
通过hooks实现Git自动发布
在服务器上,使用Git作为代码仓库,但是每次同步代码后,需要手动去修改Nginx对应的代码仓库,这样十分繁琐。
希望能够git push后,代码就能够直接上线。其实这可以通过git触发器实现。
建立目标仓库1234567cd /var/wwwmkdir blogchown git:git blog -Rcd bloggit initgit remote add origin /opt/git/blog.gitgit pull origin master
建立触发器在git仓库hooks目录下增加文件post-receive
1vi post-receive
增加如下内容
12345678#!/bin/shDEPLOY_PATH=/var/www/blogunset GIT_DIR #这条命令很重要cd $DEPLOY_PATHgit reset --hardgit pull origin master#chown www:www -R $DEPLOY_PATH
增加执行权限
1chmod +x post-receive
注意整个文件的用户,及用户组
测试先手动执行post-rece ...