仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 560|回复: 10
打印 上一主题 下一主题

[其他Linux] Linux教程之一个交换成绩仓酷云

[复制链接]
活着的死人 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:22:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
要明白学好linux不是一件一蹴而就的事,一定要能坚持使用它,特别是在使用初期。
明天碰着一个交换成绩:必要把全体接口中呈现的一个链接改成另外一个链接。固然链接地点是保留在数据库中的,可是因为某些缘故原由,不克不及间接修正数据库中的内容,只能在衬着了局的时分再举行交换。
假如有很好的逻辑封装的话,这个成绩并非甚么难事儿,可恰好代码一团乱,弄不分明究竟哪些接口必要修正。我本盘算依托蛮力挨个文件查,但试了试发明事情量其实太年夜了,没举措只能想一想其余招儿。
最初找到的招儿就是「tcpdump」,经由过程它能够间接过滤服务器衬着的内容:
  1. shell>tcpdump-ieth0srcport80-l-s0-w-|strings|grep-B100www.foo.com
复制代码
由于会见量年夜,以是经由过程一段工夫的采样,就能够捕获到尽年夜部分必要交换的内容。
不外仅仅如许还不敷,由于固然我们过滤出了有成绩的内容,可是我们其实不晓得其对应的地点是甚么,以是我们必要想举措把地点放到呼应了局里往。
假如用PHP的话,能够借助「auto_prepend_file」为一切的PHP呼应增添一个头:
  1. <?phpheader(X-Request-URI:.$_SERVER[REQUEST_URI]);?>
复制代码
假如用Nginx的话,能够借助「add_header」为一切的呼应增添一个头:
  1. http{add_headerX-Request-URI$request_uri;}
复制代码
有了这些展垫事情,再用「tcpdump」过滤内容的时分,就可以直不雅的看到地点了:
  1. HTTP/1.1200OKServer:nginxDate:Fri,22Mar201307:50:39GMTContent-Type:text/htmlTransfer-Encoding:chunkedConnection:closeX-Powered-By:PHPX-Request-URI:<URI>
复制代码
找到了地点,剩下的交换就复杂了,就未几说了。这个成绩其实不难,不外假如选错了办法,那末泯灭的工夫大概会多良多,可见即使是复杂的成绩也值得深图远虑。
BTW:Nginx有一个「Substitution」模块能完成交换,但对本例而言用它有点过了。

功能实在太强了,在配合exec参数或者通过管道重定向到xargs命令和grep命令,可以完成非常复杂的操作,如果同样的操作用图形界面的工具来完成,恐怕要多花十几陪的时间。
再见西城 该用户已被删除
沙发
发表于 2015-1-20 22:52:14 | 只看该作者
学习Linux应具备的。[书籍+网络资源]
柔情似水 该用户已被删除
板凳
发表于 2015-1-27 11:44:20 | 只看该作者
请问谁有Linux的学习心得的吗?简单的说说?
乐观 该用户已被删除
地板
发表于 2015-2-2 07:47:43 | 只看该作者
Linux是参照Unix思想设计的,理解掌握Linux必须按照Unix思维来进行。思想性的转变比暂时性的技术提高更有用,因为他能帮助你加快学习速度。
小妖女 该用户已被删除
5#
发表于 2015-2-3 13:02:40 来自手机 | 只看该作者
Linux是参照Unix思想设计的,理解掌握Linux必须按照Unix思维来进行。思想性的转变比暂时性的技术提高更有用,因为他能帮助你加快学习速度。
不帅 该用户已被删除
6#
发表于 2015-2-9 01:46:14 | 只看该作者
另外Linux上也有很多的应用软件,安装运行了这些软件后,你就可以在Linux上编辑文档、图?片,玩游戏、上网、播放多媒体文件等。
金色的骷髅 该用户已被删除
7#
发表于 2015-2-26 17:16:13 | 只看该作者
对于英语不是很好的读者红旗 Linux、中标Linux这些中文版本比较适合。现在一些Linux网站有一些Linux版本的免费下载,这里要说的是并不适合Linux初学者。
山那边是海 该用户已被删除
8#
发表于 2015-3-5 22:55:01 | 只看该作者
Linux操作系统这个名词记得在很早以前就听过,但当时并不知道具体是什么样的操作系统,只知道是一个与嵌入式密切相关的操作系统。
admin 该用户已被删除
9#
发表于 2015-3-11 13:31:34 | 只看该作者
目前全球有超过一百多个Linux发行版本,在国内也能找到十几个常见版本。如何选择请根据你的需求和能力,RedhatLinux和DebianLinux是网络管理员的理想选择。
莫相离 该用户已被删除
10#
发表于 2015-3-13 09:09:45 | 只看该作者
众所周知,目前windows操作系统是主流,在以后相当长的时间内不会有太大的改变,其方便友好的图形界面吸引了众多的用户。
因胸联盟 该用户已被删除
11#
发表于 2015-3-20 17:49:59 | 只看该作者
编程学习及开发,Linux是免费,开源的操作系统,并且可开发工具相当多,如果您支持自由软件,一定要同广大热爱自由软件人士一同为其不懈努力。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 07:45

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表