三十而立

2017年10月

html中的table表格元素

table的层级关系

table //最外层表格
tr //表示行
td //表示列

说明:
1、tr与td必须一起使用,并且输入的内容必须在td里面;
2、td必须被包含在tr里面,表示在一行中的列;
3、在一个tr里面,可以有N个td,表示在这一行里有N个列。

示例代码:

<caption>人员基本情况统计表</caption>
基本情况 姓名 性别 婚否 年龄
张三 已婚 18
李四 未婚 20
王五 未婚 28
统计 3人,平均年龄22岁
<caption>人员基本情况统计表</caption>
基本情况 姓名 性别 婚否 年龄
张三 已婚 18
李四 未婚 20
王五 未婚 28
统计 3人,平均年龄22岁

相对路径:

a.jpg 或./a.jpg  //同一个目录
xxx/index2.html  //在子目录
xxx/xxx/index2.html  //在孙子目录
../index2.html //在父目录
../../index2.html //在爷爷目录

绝对路径:

home/wwwroot/www/uploads/2017/xx.jpg

注意:html网站实际开发中一般用相对路径较多

在html页面中适当位置定义如下的锚点:

<a name="top">这里是TOP部分</a>
<a name="content">这里是CONTENT部分</a>
<a name="foot">这里是FOOT部分</a>

访问锚点的两种方法
方法一:用a超连接访问

<a href="#top">点击我链接到TOP</a>
<a href="#content">点击我链接到CONTENT</a>
<a href="#foot">点击我链接到FOOT</a>

方法二:在URL后面加入#foot
假如本页面的地址是http://文件路径/index.html,要访问foot锚点只要访问如下链接即可

http://文件路径/index.html#foot

锚点有什么用?
通俗简单地说,比如一篇很长的文章,你想按分段精确跳转到某一段,那就可以用到锚点了。

注意:
1、可以使用 id 属性来替代 name 属性,命名锚同样有效,比如 <a id="top">这里是TOP部分</a>
2、name后面的值要用双引号"",并用不加 # ,直接<a name="1"> 而不是 <a name="#1">
3、<a href="#top">点击我链接到TOP</a> 可以写成 <a href="#top"></a>点击我链接到TOP


演示案例:
点击我链接到TOP
点击我链接到CONTENT
点击我链接到FOOT


这里是TOP部分
这是头部分,这是头部分,这是头部分,这是头部分,这是头部分>。


这里是CONTENT部分
这里是CONTENT部分,这里是CONTENT部分,这里是CONTENT部分,这里是CONTENT部分,这里是CONTENT部分,这里是CONTENT部分,这里是CONTENT部分


这里是FOOT部分
这里是FOOT部分,这里是FOOT部分,这里是FOOT部分,这里是FOOT部分,这里是FOOT部分

先查看typecho是否设置伪静态,如果没有请添加伪静态规则:

nginx:

if (!-e $request_filename) {
rewrite ^(.*)$ /index.php$1 last;
}

如果伪静态添加成功,只能看首页,其他页面都是404,则继续检查是否开启pathinfo

pathinfo 一般在:/usr/local/nginx/conf/vhost/your.com.conf的配置文档中;

找到 enable-php.conf 改成 enable-php-pathinfo.conf

如果pathinfo不会配置,可以下载军哥lnmp的安装包,里面有示例文件。

百度主动推送:

方法一:自己有服务器,用curl推送
第一步:新建txt文本为:url.txt,内容为你要推送的URL地址(一行一条URL),然后上传到网站根目录
第二步:cd进入网站根目录,然后curl命令:

curl -H 'Content-Type:text/plain' --data-binary @urls.txt
"http://data.zz.baidu.com/urls?site=www.example.com&token=edk7yc4rEZP9pDQD"

www.example.com替换为你的域名,edk7yc4rEZP9pDQD 替换为你的token(百度站长后台可以查看)

第三步:看到返回{"remain":4999984,"success":1}字样就成功了(数值会有不同)


方法二:自己没服务器,用PHP推送
第一步:新建PHP文件,命名为:URL.PHP,然后添加以下代码:

$urls = array(
    **'http://www.example.com/1.html',
    'http://www.example.com/2.html',**
);
$api = 'http://data.zz.baidu.com/urls
site=**www.58.com**&token=**edk7ychrEZP9pDQD**';
$ch = curl_init();
$options =  array(
    CURLOPT_URL => $api,
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POSTFIELDS => implode("\n", $urls),
    CURLOPT_HTTPHEADER => array('Content-Type: text/plain'),
);
curl_setopt_array($ch, $options);
$result = curl_exec($ch);
echo $result;

注意:将'http://www.example.com/1.html'替换成你的URL,将edk7ychrEZP9pDQD替换成你的token

第二步:访问1次 将'http://www.example.com/url.php 即可;
第三步:看到返回{"remain":4999984,"success":1}字样就成功了(数值会有不同)


下面是一些百度推送说明:

如何选择链接提交方式
1、主动推送:最为快速的提交方式,推荐您将站点当天新产出链接立即通过此方式推送给百度,以保证新链接可以及时被百度收录。
2、自动推送:最为便捷的提交方式,请将自动推送的JS代码部署在站点的每一个页面源代码中,部署代码的页面在每次被浏览时,链接会被自动推送给百度。可以与主动推送配合使用。
3、sitemap:您可以定期将网站链接放到sitemap中,然后将sitemap提交给百度。百度会周期性的抓取检查您提交的sitemap,对其中的链接进行处理,但收录速度慢于主动推送。
4、手动提交:一次性提交链接给百度,可以使用此种方式。

使用主动推送功能会达到怎样效果
及时发现:可以缩短百度爬虫发现您站点新链接的时间,使新发布的页面可以在第一时间被百度收录
保护原创:对于网站的最新原创内容,使用主动推送功能可以快速通知到百度,使内容可以在转发之前被百度发现

主动推送功能常见问题
1, 和原来的sitemap提交接口有什么区别?
答:状态反馈更及时了,原来提交后需要登录到站长平台查看提交是否成功。目前只要根据提交后返回的数据就可以判断了。

2, 已经存在的提交sitemap数据的程序代码需要做什么修改?
答:主要修改两点。第一点,提交的接口需要修改;第二点,需要处理下接口返回的信息,失败后需要根据错误进行相应处理,报错的链接是无法提交成功的

3,为什么提交成功后看不到数据变化?
答:我们反馈的是新提交链接的数量,如果您提交的链接在之前提交过(即重复提交)是不会被统计到的

4,在什么时机使用主动推送提交功能效果最明显?
答:页面链接产生或发布时立即提交,这样效果是最好的

5,每次提交一条数据和多条数据有什么区别?
答:没有区别

6,重复提交已经发布的链接会有什么问题?
答:会有两个影响。第一,将浪费您提交的配额,每个站点每天可提交的数量是有限制的,如果您都提交了旧链接,当有新链接时可能因为配额耗尽无法提交。第二,如果您经常重复提交旧链接,我们会下调您的配额,您可能会失去主动推送功能的权限

7,主动推送可以推多少条链接?
答:主动推送可提交的链接数量上限是根据您提交的新产生有价值链接数量而决定的,百度会根据您提交数量的情况不定期对上限额进行调整,提交的新产生有价值链接数量越多,可提交链接的上限越高。

有时候会忘记wordpress密码,通过mysql修改Wordpress密码,执行SQL命令:
进入到 phpmyadmin 或者 服务器mysql,随后执行如下sql语句:

update wp_users set user_pass=md5("123456") where user_login='admin';
//123456是你的Wordpress新密码,admin是管理员账号(可替换)。执行完了命令后,你就可以用密码123456来登录Wordpress了

modoer用的是kindeditor,默认的编辑图标太多了,很多用不上,而且操作还不方便,所以动手精简下:
编辑 Modoer\core\lib 下的 editor.php

将:

$this->items['default'] = "
            ['source', '|', 'undo', 'redo', '|', 'preview', 'print', 'template', 'code', 'cut', 'copy', 'paste',
        'plainpaste', 'wordpaste', '|', 'justifyleft', 'justifycenter', 'justifyright',
        'justifyfull', 'insertorderedlist', 'insertunorderedlist', 'indent', 'outdent', 'subscript',
        'superscript', 'clearhtml', 'quickformat', 'selectall', '|', 'fullscreen', '/',
        'formatblock', 'fontname', 'fontsize', '|', 'forecolor', 'hilitecolor', 'bold',
        'italic', 'underline', 'strikethrough', 'lineheight', 'removeformat', '|', 'image', 'multiimage',
        'flash', 'media', 'insertfile', 'table', 'hr', 'emoticons', 'baidumap' $pagebreak,
        'anchor', 'link', 'unlink', '|', 'about']
        ";

替换为:

$this->items['default'] = "
            ['source', 'bold', 'forecolor', 'fontsize', 'multiimage', 'removeformat', 'clearhtml', 'link', 'unlink', 'underline', 'justifyleft', 'justifycenter', 'strikethrough', 'table',  'fullscreen']

效果如图:
TIM截图20171020212426.jpg

顿时世界就清静了...
参考:http://kindeditor.net/docs/option.html#items

linux 直接上传 rz 与下载 sz 命令

(一)安装方法汇总

1、安装方法(推荐)

yum install lrzsz -y

2、在安装Linux系统时选中“DialupNetworking Support”组包

3、安装系统联网启动后执行yum直接安装组包

yum groupinstall "Dialup Networking Support" -y

(二)上传下载文件测试

1、条件:需要使用SecureCRT或者Xshell等客户端工具连接Linux

2、上传下载命令测试

1)上传 rz //可加-y参数

在客户端SSH命令行运行rz命令,命令如下:

[root@oldboy ~]# rz -y

执行后会弹出上传文件的选择窗口,可以选择相关文件上传(不支持直接上传目录)。

提示:可以使用rz -y实现覆盖上传,上传窗口的默认目录可以在SSH客户端里进行设置。

2)下载(sz) //可加-y参数

实现下载可以直接使用szfilename,其中filename就是你想要下载的文件的名字,如果是目录需要打包成单个文件在实现下载。

[root@oldboy ~]# sz oldboy.txt  #<==oldboy.txt要存在,可以是相对路径或绝对路径。

上传下载目录SecureCRT默认是安装目录下的upload/download目录,可自行修改。XShell是在文件-->属性-->文件传输里进行设置,默认是下载前询问。

(三)XShell特殊上传方法

直接将文件拖入XShell命令行窗口即可。
1.png

(四)rz上传的坑
下图内容不要打钩,否则上传的文件会有问题。
2.png

转载自 “老男孩linux培训” :http://oldboy.blog.51cto.com/2561410/588592

p30916059.jpg

观后感:关键在于执行,每天看一遍,坚持下来养成习惯,只要21天。

我叫特立独行的猫,2008年毕业开始上班,至今七年。七年前我看到过一句话:“下班后两小时,决定你将会成为一个怎样的人。”因为各种原因,我决定试试看。

这七年来,上班时是某国际公关公司的在职员工,下班后我是一个坚持写作的人,期间写了四本书,《当你的才华还撑不起你的梦想时》《不要让未来的你,讨厌现在的自己》等等,同时结婚生子倒也什么都没耽误~ 虽然这七年坚持非常辛苦,但收获也会非常大,甚至下班后的成就比上班的成就大的多,在一定意义上,也改变了我的人生路。(老板对不起(ㄒoㄒ))

很多人问我,作为现如今的加班狗,下班就瘫倒在家里了,如何利用下班或者业余的时间来发展自己的爱好?如何在有孩子之后还能捡起自己想要做的事情?如何告别手机党,让自己看看书长点心?其实有很多问题我也有,我也在努力,那么不妨分享一下我的小小心得,希望能帮助有同样问题的你。如果你有好方法,也欢迎你来告诉我,共同进步。

1 下班就累的瘫倒了怎么办:用健身战胜累瘫睡
90%的人问了同一个问题,上班通勤已经很累了,回家只想倒头就睡,根本没有力气再做业余活动,更无法动手动脑把业余活动做出什么成就来,这简直就是一个无法破的死循环,该怎么办!以我的实际经验告诉你,早晨去健身,去健身,去健身。那会不会让身体更累呢?你去试试看,真的去试试看。我从早晨健身后,整个一天都精神振奋的想大跳,观察我身边的健身妹子们,以前一个个都是加班狗,上班一年就一个个暮气沉沉,健身后一个个感觉都朝着网红路上走了。人的精神和外貌都改变成这样了,随时随地精神百倍!这些人现在干点啥都发朋友圈,简直都想屏蔽她们。

2 拖延症与懒癌患者怎么破:从最小的事快速做开始
面对一天汹涌的工作量和路上颠簸,拖延症与懒癌发作是特别值得理解的。我的方法就是从最小的事情做起,给自己建立小小的成就感。比如告诉自己:马上去洗澡,马上去洗手换衣服,马上去吃饭。当一件件小时很快的完成之后,内心会有成就感,小小的成就感会让自己越来越有劲儿,也会去立刻动手做比较大的事情。我以前下班回家一直拖到睡前才洗澡,结果睡前太困又不想洗导致一拖再拖拖到两三点才睡觉。然后开始用这种方法开始练习,到家就告诉自己马上放下书包去洗澡,吃饭,收拾妥当带孩子睡觉后就开始看书写作上英语课,只要成功到家洗澡,成就感就会爆棚一下下,晚上做事效率也非常棒。

3 啥都想干时间不够用:目标不要太大,从小事计划起(非常重要)
很多人问:我想下班后学个跳舞,还要健身,读书,写作,学英语,可是真的没有那么多时间怎么办?下班后一事无成的一个很大原因是目标太大,什么都想做,结果不知道到底该干嘛。你可以尝试把这些目标都分开,一三五健身,二四六写作,周日读一天书。下班后的每个人都会非常累,合理的安排好自己的欲望,并管理自己的行动,是非常重要的事。

4 生活被各种小事儿撕扯着:善于利用碎片时间(非常重要)
利用碎片时间处理一些杂事,比如我会在出租车上给手机充值,收发邮件,刷淘宝买东西,和微信朋友说事儿,给自己订饭等等。这些事一定要是非常小而杂的,而不是碎片时间看一本书之类的。因为碎片很可能就几分钟,或者20分钟,刚翻开书看了两行车来了,这样会不断打断看书的心态。长时间看不完一本书,你就会气馁。当然,如果你在路上的时间很长,比如地铁要半小时,可以用来看书,否则就用来处理一些杂事就好。

5 事儿太多记不住要干什么:每天列个To do list,好记性不如烂笔头
我有两个list,一个是上班要做的事,一个是个人要做的事。好记性不如烂笔头,年纪越大越相信这句话,越是忙乱越是要白纸黑字的写下来。每天时刻想着这两个List,一个个完成就是每天的成就感。如果有个别没有完成就转移到第二天的List中去,不断地告诉自己这件事还没有完。

6 我是睡神,无法像你一样熬夜:再大的成就都比不过健康重要
睡觉的问题没有可比性。我天生睡觉少,精力充沛,所以一直以来都睡的比较少,但这件事不能模仿,要跟据自己的身体情况来。你要么早睡早起,早晨开始工作读书健身,要么晚睡晚起,很多人晚上灵感好,这都没问题。至于晚睡影响健康的问题,只能是每个人量力而行,根据自己的身体和习惯来。但倘若你就是非常爱睡觉,一天12个小时才能醒,那就好好睡觉,不要跟自己的身体较劲,再大的成就都比不过健康重要。

7 总是对自己的不上进有负罪感:不要玩的时候想着学,学的时候想着玩(非常重要)
我就是这件事的最大受害者,可能大多数人也是吧。学习的时候想着我应该放松一下自己,玩的时候觉得我这么不学无术的怎么好,所以心里总是太有负罪感的生活。日复一日,再好的日子也过的匆匆忙忙,没法静下心来吃一顿好饭,喝一杯咖啡。现在我的做法是,每天给自己1-2个小时写作,至少一小时看书,每周周末有一天都是玩,不管是看书还是睡觉还是出去见朋友。给自己规定好什么时间里做什么事情,其他的都不去想,反而效率高了很多,做每件事的时候都能真正投入进去,整个人的精神面貌都不一样了。

8 总是这那磨蹭,时间就没了:保存好自己的精力,在整块的时间里做最难的事
拖延症还有一个原因是事情太复杂,一直不动手,结果拖得越来越久。如果你的某天工作没有很累,下班后的时间还能做点复杂的事,一定要保存好自己的精力,回家就开始干。比如读一本深奥的书,写一篇长文,看一部英文电影等等。而不是回家后这里磨蹭一下,那里聊会天儿,等精力消耗的差不多了,你也做不了什么大事儿了。

9 手机依赖重度患者:跟手机分别一小会儿,天不会塌下来
我是手机依赖重度患者,用我先生的话来说,我要是晚上不看手机,就能看一整本书。我在努力改善,比如写作的时候用“小黑屋”软件,让自己不再分心。看书的时候一小时内不看手机,你看,天也没有塌下来。只要开着声音,别让老板找不到我就可以了...... 事实上,手机依赖重度患者老看手机也并不是因为有多重要的事在与人商讨,多半是自己这里逛逛,那里刷刷,下一堆软件挨个刷,然后消费了一大把。

10 有孩子如何安排时间:从最小的工作量开始做起,树立成就感
这是很多妈妈的问题,包括全职妈妈和上班族妈妈。只要有孩子,只要跟孩子在一起,就做不了任何事儿!这该怎么办呢?我的方法是,陪孩子的时候专心陪,不要想着自己还想做这做那,要知道三岁一进幼儿园开始有了自己的小伙伴和小对象儿,你我可就是退而求其次的选择了。所以别老抱怨孩子耽误了自己的时间,该陪伴的时候好好陪着。等孩子睡觉以后,或者任何能自己玩不需要我们的时候,或者有老人或者阿姨能帮忙看一会儿的时候,抓紧时间做点事儿。比如晚上八点左右孩子睡了以后,我的个人生活就开始了。当然对于全职妈妈来讲,白天带孩子会非常非常累,累到孩子一睡自己也想睡。我个人觉得,这种情况如果还想做点什么事的话,一定要从最小的工作量开始做起,比如看五页书。看一集电视剧,做一个简单的手工等等,让自己先有点成就感,慢慢跟着自己的节奏和精神状态增加量。事虽然小,但积累起来就比什么都没干要强很多。目标太大,身体疲惫会让自己非常累,但做不完又心里难受,看到别人天天都在进步,只有自己天天只有围着孩子转,就会产生不良的情绪。

我还有一个建议,很多全职妈妈都想要做点什么事儿,但又觉得不知道从哪里下手。我个人觉得每天带孩子其实是个非常好的素材,要知道很多在职妈妈都没办法看到孩子每一天的成长,如果你愿意写下来,并分享,并阅读一些书籍来思考孩子每步的成长,于己于人都是非常好的内容,可以试试看。

11 辞职当自由职业者是不是就有了更多自由时间:No
自由职业者的时间精力自我管控非常非常重要。很多人只要一休息,就是半夜睡下午起,如此循环,上班时候想着辞职后一定要每天都过得神采奕奕的,天天晒幸福,结果却过成了浑浑噩噩,黑白颠倒。我们大部分人几十年已经习惯了有人给你规定上学上班时间,你按时遵守就可以了。把自由的生活规划的跟上班一样,几点起床,几点工作,几点吃饭,几点去玩,这是非常非常重要的事,千万别觉得上班太苦,辞职肯定会很爽。你要相信,如果不规划时间,大部分人辞职后的生活就会像雾霾一样,越来越看不清前面的方向。自我管理工作量,自我控制时间,自我调节情绪,全靠自己发挥主观能动性了。

生活不需要时刻打鸡血,若一事无成也不必内疚。年轻的时候总觉得生活一定要努力,年纪大了看多人不同的人,又会觉得每个人都有自己的生活方式,不是每个人都必须时刻紧绷着努力。你可以懒散一些,也可以紧张一些,全看自己拥有怎样的现状,是否对自己的未来有别其他的憧憬和想法。上班下班看电视睡觉也不失为一种美好的生活方式,只是于我个人而言,保持努力和进步的样子,哪怕是表象,会让自己面对纷繁变化的世界,心安一些。这样说可能会让你觉得一点都不励志,但这就是百态人间最真实的样子。

下班后两小时,决定你将会成为一个怎样的人,我们一起,共勉。


转载自:https://www.douban.com/note/531392298/
作者:特立独行的猫
微博:@一直特立独行的猫
著有超级畅销书《不要让未来的你,讨厌现在的自己》
新书《当你的才华还撑不起你的梦想时》全面开售
62篇佳作,超十亿次阅读,带给你青春成长的全新力量
写给迷茫彷徨却年轻、充满希望、拥有无限未来的你

mysql数据导入时报错:[Err] [Imp] 1153 - Got a packet bigger than 'max_allowed_packet' bytes

mysql根据配置文件会限制server接受的数据包大小。
有时候大的插入和更新会被 max_allowed_packet 参数限制掉,导致失败。

解决方法:

//先查看目前配置
show VARIABLES like '%max_allowed_packet%';

如果显示的结果为:

max_allowed_packet | 1048576 | 

以上说明目前的配置是:1M

//查my.cnf文件在哪里
mysql --help | grep my.cnf

//一般linux在etc下,打开编辑
vi etc/my.cnf
//修改为20m
max_allowed_packet = 20M

//然后重启下mysql,应该就成功了
/etc/init.d/mysql restart 

如果是军哥的的lnmp用户,直接 lnmp mysql restart 即可

为了安全起见,lnmp 的大部分版本都是禁止远程连接mysql的

开启的话可以按如下步骤:
1、首先需要自己在phpmyadmin里添加一个用户 主机为 % 的任意主机(也可以编辑已有的用户)
2、并且iptables 里删除DROP 3306端口的规则

//查看防火墙的序号
iptables -L -n --line-numbers

比如要删除INPUT里序号为8的规则,执行:

//删除第8条
iptables -D INPUT 8

iptables教程:https://www.vpser.net/security/linux-iptables.html

如果以上设置都不行,如果你用的是(阿里云或者类似云)的服务器,那么要设置:安全组规则

入方向  自定义TCP  端口范围:3306/3306    授权对象:0.0.0.0/0

vagrant可以创建局域网,以完成协作开发,具体配置如下:

//打开vagrantfile,添加1台名为phpstudy的虚拟主机,并且设定ip为192.168.0.200,映射目录为D盘下的phpstudy
//注意:ip地址可以为本地局域网192.168.0.***中的任意数字,不冲突就行
config.vm.define "phpstudy" do |phpstudy|
    phpstudy.vm.network "private_network",ip:"192.168.0.200"
    config.vm.synced_folder  "phpstudy", "/vagrant"
    phpstudy.vm.hostname ="phpstudy"
  end

//重启虚拟主机
vagrant reload phpstudy

//创建一个网站
sudo vi /etc/nginx/conf.d/phpstudy.conf
//绑定域名为www.phpstudy.local
server {
  listen        80;
  server_name   www.phpstudy.local;
  root          /vagrant/default;
  index         index.php index.html;
 location / {
    try_files $uri $uri/ /index.php?$query_string;
  }
  location ~ \.php$ {
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    include fastcgi.conf;
  }
}
//接下来个改hosts文件
//win10在:C:\Windows\System32\Drivers\etc
//winxp在:C:/Windows/System32/drivers/etc/
//win7在: C:\Windows\system32\drivers\etc\hosts
192.168.0.200       www.phpstudy.local

局域网内的电脑,只要修改hosts就能访问虚拟机了。

modoer nginx伪静态,目录结尾形式

if ($uri !~ "^.*(.css|.js|.gif|.png|.jpg|.jpeg|.ico)$"){
set $rule_0 1$rule_0;
}
if (!-f $request_filename){
set $rule_0 2$rule_0;
}
if (!-d $request_filename){
set $rule_0 3$rule_0;
}
if ($rule_0 = "321"){
rewrite ^/(.*)$ /index.php?Pathinfo=$1 last;
}

modoer nginx伪静态,.html结尾形式

rewrite
 /(mylist|article|card|comment|coupon|exchange|fenlei|item|link|member|index|party|product|space|tuan|ucenter|ask|pay|graph|ask|review|shop|group|weixin|mobile).html$ /index.php?Rewrite=$1.html last;
    rewrite ^/(mylist|article|card|comment|coupon|exchange|fenlei|item|link|member|index|party|product|space|tuan|ucenter|ask|pay|graph|ask|review|shop|group|weixin|mobile)-(.+).html$ /index.php?Rewrite=$1-$2.html last;

nginx 301重定向

if ($http_host ~ "^abc.com"){
set $rule_0 1$rule_0;
}
if ($rule_0 = "1"){
rewrite ^/(.*)$ http://www.abc.com/$1 permanent;
}//把aa.com301重定向到www.abc.com

Apache 301跳转

RewriteCond %{HTTP_HOST} ^abc.com
RewriteRule ^(.*)$ http://www.abc.com/$1 [R=permanent,L]

Apache 伪静态

RewriteEngine On
# / 标识Modoer是在主域名或者二级域名下面,如果你的访问地址是www.modoer.com/modoer,就需要把 / 改成 /modoer
RewriteBase /
# 这是HTML伪静态部分
RewriteRule ^(mylist|article|card|comment|coupon|exchange|fenlei|item|link|member|index|party|product|space|tuan    |ucenter|ask|pay|graph|ask|review|shop|group|weixin|mobile)\.html$ index.php?Rewrite=$1.html [L]
    RewriteRule ^(mylist|article|card|comment|coupon|exchange|fenlei|item|link|member|index|party|product|space|tuan|ucenter|ask|pay|graph|ask|review|shop|group|weixin|mobile)\-(.+)\.html$ index.php?Rewrite=$1-$2.html [L,NC]

这是目录形式的URL改写

RewriteCond %{REQUEST_URI} !^.*(\.css|\.js|\.gif|\.png|\.jpg|\.jpeg|\.ico)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?Pathinfo=$1 [L]

apache转nginx伪静态工具:
http://www.anilcetin.com/convert-apache-htaccess-to-nginx/

第一、检查阿里云服务器数据盘情况
利用fdisk -l命令,检查当前VPS的数据硬盘情况。。

第二、挂载阿里云数据硬盘
输入fdisk /dev/vdb,依次输入n,p,1,回车,回车,wq,保存退出。
完毕之后,我们重新输入fdisk -l,已经可以看到数据盘已经被分区。

第三、格式化分区及挂载目录
A - 格式化挂载数据硬盘分区

mkfs.ext3 /dev/vdb

B - 创建目录挂载

echo '/dev/vdb  /home ext3    defaults    0  0'   /etc/fstab

对应上面的home目录是我们挂载对应磁盘的路径(可根据自己需要替换)。

第四、执行mount -a挂载
输入mount -a命令,直接挂载,然后df -h检查看看是否成功。

TIM截图20171015090520.jpg

已经看到挂载成功到home

把当前一个文件copy到远程服务器上:

scp /home/a.txt root@192.168.0.8:/home/root

把远程主机上的文件copy到当前主机上:

scp root@192.168.0.8:/home/b.txt

把远程主机上的文件夹copy到当前主机上:

scp -r root@192.168.0.8:/home/ /root/home2

接着会提示输入远程主机的密码,确定后OK

win10系统 hosts位置

C:\Windows\System32\Drivers\etc

如何修改?
直接修改会提示你无法保存,原因是权限不足,修改权限太过麻烦。

直接复制hosts文件到桌面,用txt记事本打开,然后修改完再放回去。

php开启与关闭错误提示
提示:我是在本地的vagrant测试机

//编辑php.ini文件,搜索 display_errors ,把 off 改为 on
sudo vi /etc/php.ini

然后重启nginx 和 php-fpm

sudo systemctl restart nginx
sudo systemctl restart php-fpm

今天本地测试tipask,然后需要安装xunsearch,在安装时出现了错误

[vagrant@askbuy ~]$ cd /usr/local
[vagrant@askbuy local]$ ls
bin  etc  games  include  lib  lib64  libexec  sbin  share  src
[vagrant@askbuy local]$ sudo wget http://www.xunsearch.com/download/xunsearch-full-latest.tar .bz2
--2017-10-07 13:42:05--  http://www.xunsearch.com/download/xunsearch-full-latest.tar.bz2
Resolving www.xunsearch.com (www.xunsearch.com)... 202.75.216.233
Connecting to www.xunsearch.com (www.xunsearch.com)|202.75.216.233|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 10435852 (10.0M) [text/plain]
Saving to: ‘xunsearch-full-latest.tar.bz2’
100%[====================================================&gt;] 10,435,852  10.0MB/s   in 1.0s
2017-10-07 13:42:06 (10.0 MB/s) - ‘xunsearch-full-latest.tar.bz2’ saved [10435852/10435852]
[vagrant@askbuy local]$ sudo tar -xjf xunsearch-full-latest.tar.bz2
[vagrant@askbuy local]$ ls
bin  games    lib    libexec  share  xunsearch-full-1.4.10
etc  include  lib64  sbin     src    xunsearch-full-latest.tar.bz2
[vagrant@askbuy local]$ cd xunsearch-full-1.4.10
[vagrant@askbuy xunsearch-full-1.4.10]$ ls
packages  README.md  setup.sh
[vagrant@askbuy xunsearch-full-1.4.10]$ sudo sh setup.sh
+==========================================+
| Welcome to setup xunsearch(full)         |
| 欢迎使用 xunsearch (完整版) 安装程序     |
+------------------------------------------+
| Follow the on-screen instructions please |
| 请按照屏幕上的提示操作以完成安装         |
+==========================================+
Please specify the installation directory
请指定安装目录 (默认为中括号内的值)
[/usr/local/xunsearch]:
Confirm the installation directory
请确认安装目录:/usr/local/xunsearch [Y/n]y
Checking scws ... no
Installing scws (1.2.3) ...
Extracting scws package ...
Configuring scws ...
-----
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in `/usr/local/xunsearch-full-1.4.10/scws-1.2.3':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details
-----
ERROR: failed to configure scws, see 'setup.log' for more detail

问题原因:是因为没有安装编译器
解决方案,安装g++

sudo yum install gcc-c++</code>
Is this ok [y/d/N]: y</code>//这里选择 Y就可以

看到:Complete!就说明安装成功

然后再重新执行

cd xunsearch-full-1.4.10
sudo sh setup.sh

结果又出现

configure: error: zlib.h not found - required for brass, chert and flint (you may need to install the zlib1g-dev or zlib-devel package)
-----
ERROR: failed to configure xapian-core-scws, see 'setup.log' for more detail

问题原因,没有安装 zlib-devel
解决方法,安装 zled-devl

sudo yum install zlib-devel
//中间还会选择Y

这次安装成功了

+=================================================+
| Installation completed successfully, Thanks you |
| 安装成功,感谢选择和使用 xunsearch              |
+-------------------------------------------------+
| 说明和注意事项:                                |
| 1. 开启/重新开启 xunsearch 服务程序,命令如下: |
|    /usr/local/xunsearch/bin/xs-ctl.sh restart
|    强烈建议将此命令写入服务器开机脚本中         |
|                                                 |
| 2. 所有的索引数据将被保存在下面这个目录中:     |
|    /usr/local/xunsearch/data
|    如需要转移到其它目录,请使用软链接。         |
|                                                 |
| 3. 您现在就可以在我们提供的开发包(SDK)基础上    |
|    开发您自己的搜索了。                         |
|    目前只支持 PHP 语言,参见下面文档:          |
|    /usr/local/xunsearch/sdk/php/README
+=================================================+

接下来就执行下面命令:

cd /usr/local/xunsearch/sdk/php/app
cp demo.ini tipask.ini
vi tipask.ini

加入如下代码:(这段代码来源于很早以前 官方的 整合教程)

project.name = tipask
project.default_charset = utf-8
server.index = 8383
server.search = 8384
[id]
type = id
[cid]
type = numeric
[cid1]
type = numeric
[cid2]
type = numeric
[cid3]
type = numeric
[author]

[authorid]
type = numeric

[answers]
type = numeric

[status]
type = numeric

[time]
type = numeric

[title]
type = title

[description]
type = body

最后:保存,重启xunsearch;(命令: /usr/local/xunsearch/bin/xs-ctl.sh start

然后配置开机启动

sudo vi /etc/rc.d/rc.local   //本地服务器才加sudo
/usr/local/search/bin/xs-ctl.sh start   // 加入这一条命令到启动项
sudo chmod +x /etc/rc.d/rc.local   //权限

如果没有意外,后台就可以启用xunsearch了,到tipask后台开启xunsearch使用吧。