高富帅们的Git技巧

Git是一个分布式版本控制系统,拥有许多神奇而易用的特性(比如:分支),这让它可以轻松适应各种工作流程。这篇文章不涉及Git的基本使用,而是介绍了一些高级却有用的小技巧。让我们一起来看看高富帅们的Git技巧,准备好逆袭吧!

以“块”形式暂存你的改动

你肯定已经很熟悉的使用git add命令来将改动暂存到暂存区(staging area)了。你可能也会偶然因为两个不同的原因而做了一次改动,却没有分别提交(仅仅提交了一次),所以,当你执行git log时,会看到诸如这样的提交信息:“修改X,改动无关的Y”。如果这看起来像是你的工作方式,交互式add将是你的有力工具。

交互式add(或者叫add块),将会一个块一个快的循环你的改动。使用命令git add -p时,你可以在每个改动“块”(即:连续的改动会被组织到一起)时进行一些选择,比如:切分当前块为更小的块、跳过一个改动块、甚至手动的编辑该块,你 可以敲入?来查看所有该命令提供的选项。

开始以“块”形式暂存改动简单到只需一条命令(括号部分替换为特定文件):

git add -p (path/file)

译者注:感觉这条命令平常用的较少,我遇到需要分别提交的情况时,都是手动来add然后提交,该命令是这种方法的高级版本。我们平常可能对提交历史的重视比较低,常常出现一些无用的、无意义的提交信息,可以试试这条命令。

切换到最后所在分支

作为一个善良的码农,当你需要快速做些修正或是清理工作时,你都应该花些时间来对待。如果你的工作流程是十分依赖分支的话(译者注:强烈建议如 此),你可能不希望无关的修正影响到现在正在进行功能开发的分支。这意味着,你应该使用git stash命令来暂时存放你的改动,然后切到master分支(译者注:或是其它啥分支,我一般是取名为fix),在那个分支进行修正。(译者注:修正完 了,可以切回正在进行功能开发的分支,执行git stash pop来弹出之前暂存的改动,继续进行开发)。在不同分支间切换很乏味,幸好这里有个快捷命令可以切换到你最后所在的分支:

git checkout -

这个语法对于使用linux的高富帅们来说一定不陌生,cd命令有个类似的缩写cd -,表示切换到你最后所在的目录。当你需要切回功能开发分支时,你根本不用关心那个分支是啥名,只需git checkout -。

译者注:感觉tab键的自动补全也挺好用的,不过这条命令可以少敲点字。有了这条命令,妈妈再也不用担心我的分支切换了。

显示哪些分支被合并了(或是哪些没有被合并)

在使用git时,你可能会创建许多分支,导致执行git branch命令列出分支时变得有些杂乱。于是,你想处理那些已经合并到master分支的无用分支,但是,当你执行git checkout -d 来删除分支时可能会遇到“麻烦”(译者注:git会拒绝删除未合并的分支并提示你),如果使用以下命令,你将不再需要三思而后删,可以自信的处理那些已经 合并了的分支。

如果你想要看看你的本地分支里哪些分支是已经合并进你当前所在的分支时,可以使用:

git branch --merged

反过来,如果需要查看哪些分支还没有合并进当前所在的分支,可以使用:

git branch --no-merged

结合高富帅的UNIX工具,你可以轻松的删除那些已经合并了的分支:

git branch --merged | xargs git branch -d

译者注:xargs是UNIX平台的一个工具,它的作用是将参数列表转换成小块分段传递给其他命令,以避免参数列表过长的问题。如果git branch –merged显示的是a,b,c三个分支已经合并,上面的命令会转换为:git branch -d a b c。更多xargs的信息:http://zh.wikipedia.org/wiki/Xargs

从另一分支获取文件内容而不用切换分支

设想你正在进行重构,你创建了好几个分支并在各分支下进行改动。这时,你想把另一个分支里某一个文件的改动引入到当前工作的分支里,为了达到目的你 可能需要好几步:git stash你的改动;切换到那个分支;获取文件的改动;切回工作分支(当然是使用git checkout -);继续进行编辑(译者注:别忘了git stash pop)。但是,你也可以直接检出另一分支的文件,并且合并到你当前所在的工作分支,使用命令(括号部分替换为对应的分支和文件):

git checkout (branch) -- (path/file)

以最后提交排序的Git分支

想必你已经使用上面的tip处理了杂乱的分支,有一些是用–merged选项标志来清理的吧。那其它的分支咋办呢?你咋知道哪些是有用的,哪些是 完全过期无用的呢?git for-each-ref命令可以打印出一个列表,该列表显示每个分支最后一次提交的引用(reference)信息。我们可以自定义输出来包含一些有用 的信息,更重要的是我们还可以按日期排序。可以使用下面的命令来输出一个列表,该表将显示按时间先后排序的每个分支的最后提交信息、提交者等信息:

git for-each-ref --sort=-committerdate --format="%(committername)@%(refname:short) [%(committerdate:short)] %(contents)"

还可以把它定义在gitconfig里:

[alias]
  latest = for-each-ref --sort=-committerdate --format=\"%(committername)@%(refname:short) [%(committerdate:short)] %(contents)\"

译者注:定义后就只需执行git latest了。注意双引号需要转义!

在玻璃房内的人们别用git blame

或者说,在玻璃房内的人们不应该直接使用git blame而不带下文的选项标志。(译者注:玻璃房内的人是完全能被别人看到的人。这里的意思应该是想说,你每一次提交的变动都会被记录到git仓库的历 史,对于git仓库来说,你就像是住在玻璃房里的人,没有任何秘密,你根本逃不过git的”责问“)git blame是很有用的命令,它就像使用科学来证明你是正确的!但是请注意,许多文件的变动是很表面的,发现问题的来源需要更多的探索。像是移除空白、移动 内容到新行、移动内容到另一文件等动作都可以使用选项来忽略掉,以便更容易的找到代码变动的始作俑者。

在你blame(责备)他人前,记得用以下命令看看结果:

git blame -w  # 忽略移除空白这类改动
git blame -M  # 忽略移动文本内容这类改动
git blame -C  # 忽略移动文本内容到其它文件这类改动

译者注:git blame用来显示一份文件每一行的最近一次提交的提交hash值和提交者。当你跟别人说“我真的没改过这个文件啊”之前,就得git blame下。

在整个git仓库提交历史中找寻内容(然后删掉它)

你有时可能需要查找一行你写的代码,但是就是无法找到。它可能安放在了一些已经被遗忘的分支,或是删除了很久,又或是就在那显而易见的地方。无论哪种方式,你都可以通过一些命令在整个git仓库的历史中搜寻特定的字符串。

首先,我们需要拿到所有的提交,然后,使用git grep来搜寻特定的字符串。如下:

git rev-list --all | xargs git grep -F '搜寻的字符串'

你可能有一个粗心的朋友不小心在仓库里提交了诸如,用户名、密码、外婆的大蒜食谱等敏感信息。首先,他们得更改用户名、密码(并向外婆道歉)。然 后,你需要搜寻这些得罪人的文件,并将他们从整个仓库的历史里抹去(这听起来好像很容易)。经过这个处理,那些执行git pull的伙计们就会发现所有提交中包含的敏感信息都被清理干净了,而那些没有合并你的远程改动的家伙还是拥有敏感信息(所以,千万别忘记先改用户名和密 码)。我们来看看怎么操作。

首先,重写每个分支的历史,移除敏感信息:

git filter-branch --index-filter 'git rm --cached --ignore-unmatch (filename)' --prune-empty --tag-name-filter cat -- --all

然后,将记录敏感信息的文件增加到.gitignore文件,并提交(括号部分替换为对应文件名):

echo (filename) >> .gitignore
git add .gitignore
git commit -m "Add sensitive (filename) file to gitignore"

接着,由于我们改写了历史,我们需要“强制”的将改动推到远程:

git push origin master --force
# 译者注:还可以使用命令
git push origin +master

最后,这个文件还在你的本地仓库里,还需要将它完全抹除:

rm -rf .git/refs/original/
git reflog expire --expire=now --all
git gc --prune=now
git gc --aggressive --prune=now

你这粗心的朋友从敏感文件的危机中解脱,而你用你高超的git知识成功逆袭,成为了他的英雄!

译者注:一天,妹子叫我去她家帮她把她的三围信息从git仓库的历史里完全删除,我研究了很久不得要领。妹子说,不如我们做点其它的事吧。我觉得我的git知识被她鄙视了,坚定的说,我一定要把它删掉!然后,就没有然后了… …

忽略文件跟踪

在和他人合作时可能常常意味着你需要更改一些配置才能让应用在环境里跑起来,这时,常常会不小心把这些只对你有意义的配置文件也给提交了。为了不再 常常关注这些文件,看着它们在git status时放肆的显示“modified”,你可以告诉git忽略它们的改动。这种方式,可以看成是一种和仓库绑定的gitignore文件(括号部 分替换为对应文件):

  git update-index --assume-unchanged (path/file)

译者注:感觉,.gitignore文件更方便和好理解。

让分支的历史归零

不管出于啥理由,有时从头开始正是你需要的。也许是你接手了一个不确信能安全开源的代码仓库;也许是你要着手做些全新的事情;也许是你想创建用于其 它目的一个新分支,又希望继续在仓库里维护它(比如:github页面,项目的文档一类的东西)。上述的情形下,你可以非常简单的创建一个没有提交历史的 分支(括号部分替换为对应分支):

  git checkout --orphan (branch)

译者注:我们知道,分支只是对提交的一个引用,所以,每当从当前分支创建一个分支时,被创建的分支都会延续之前的历史,但是这种方式却不会,是一个完完全全干净的git分支,没有任何的提交!

你一定离不开的别名

不讨论能节省大量敲击时间的“git别名(git alias)”技巧的git文章一定都是在耍流氓。停止输入冗长的命令,使用超级有用的别名吧!git别名可以加到.gitconfig文件里,或是使用 命令(译者注:本质就是改写.gitconfig命令)来增加(括号部分替换为别名和对应的命令):

    git config --global alias.(name) "(command)"
  1. 在依赖分支的工作流程中,你常常要在不同分支间切换,每次敲击节约你6个字母。
    co = checkout
    
  2. 在提交前瞧瞧你将要提交的都有什么改动是一个好习惯,这可以帮助你发现拼写错误、不小心的提交敏感信息、将代码组织成符合逻辑的组。使用git add暂存你的改动,然后使用git ds查看你将要提交的改动动。
    ds = diff --staged
    
  3. 你可能十分熟悉git输出的详细状态信息了,当到达一定境界时,你可能需要忽略所有那些描述,直击问题的核心。这个别名输出将输出git status的简短形式和分支的详细信息。
    st = status -sb
    
  4. 你是否在提交后才发现忘记git add某个文件了,或是提交了才想再改动些啥?amend(修正)暂存区到最近的一次提交吧。(译者注:这个命令不太好理解,–amend是重写提交历 史,-C是重用某次提交的提交信息。场景是当你提交完了发现还有些改动没提交,又不想写什么“改动了X,再次提交”这种狗血的提交信息。重新git add并git amend后,重用上次的提交信息再次提交,替换上次的不完整提交。特别注意–amend重写了提交,如果你已经push到远程了,慎用这条命令!)
    amend = commit --amend -C HEAD
    
  5. 有时上面的修正可能不好使了,你需要undo(撤销)。undo会回退到上次提交,暂存区也会回退到那次提交时的状态。你可以进行额外的改动,用新的提交信息来再次进行提交。
    undo = reset --soft HEAD^
    
  6. 维护一个多人编辑的代码仓库常常意味着试着发现何人在改动什么,这个别名可以输出提交者和提交日期的log信息。
    ls = log --pretty=format:'%C(yellow)%h %C(blue)%ad %C(red)%d %C(reset)%s %C(green) [%cn]' --decorate --date=short
    
  7. 这个别名用来在一天的开启时回顾你昨天做了啥,或是在早晨刷新你的记忆(括号内替换为自己的email)。
    standup = log --since '1 day ago' --oneline --author (YOUREMAIL)
    
  8. 一个复杂的仓库可能很难用直线式的输出来查看,这个别名可以用图表的形式向你展示提交是怎样及何时被加到当前分支的。
    graph = log --graph --pretty=format:'%C(yellow)%h %C(blue)%d %C(reset)%s %C(white)%an, %ar%C(reset)'
    

译者注:我根据上面的别名进行了一些整理修改,这是我现在的.gitconfig里的别名配置:

[alias]
  st = status -sb
  co = checkout
  br = branch
  mg = merge
  ci = commit
  ds = diff --staged
  dt = difftool
  mt = mergetool
  last = log -1 HEAD
  latest = for-each-ref --sort=-committerdate --format=\"%(committername)@%(refname:short) [%(committerdate:short)] %(contents)\"
  ls = log --pretty=format:\"%C(yellow)%h %C(blue)%ad %C(red)%d %C(reset)%s %C(green)[%cn]\" --decorate --date=short
  hist = log --pretty=format:\"%C(yellow)%h %C(red)%d %C(reset)%s %C(green)[%an] %C(blue)%ad\" --topo-order --graph --date=short
  type = cat-file -t
  dump = cat-file -p

via alimama mux
作者:Chris Kelly 译者:栖邀
英文原文

来源:http://segmentfault.com/a/1190000002448847

服务器的瞬时 Diffie-Hellman 公共密钥过弱

服务器的瞬时 Diffie-Hellman 公共密钥过弱

ERR_SSL_WEAK_SERVER_EPHEMERAL_DH_KEY

该错误会在连接到安全 (HTTPS) 服务器时发生。 这意味着服务器正在尝试建立安全连接, 但由于严重的配置错误,连接会很不安全!

在这种情况下, 服务器需要进行修复。 为了保护您的隐私, “Google Chrome”不会使用不安全的连接。

以前可以跳过,现在不行了

方法:

1.更改服务器加密协议为TSL,chrome 45 版本后不再支持SSL v2 v3了

Firefox 可以使用 禁止dhe,不过不推荐

2.使用更高强度的证书,可以自签,也可使用免费证书(不过都有时间限制)

当然如果不差钱,可以购买一个证书,这样解决问题彻底

黑客公开CSDN网站数据库 600余万用户资料泄密

来源: 站长之家

360安全卫士官方微博发布了一条紧急通知,称CSDN网站600余万用户数据库泄密。

CSDN是Chinese software develop net的缩写,中国软件开发联盟。中国最大的开发者技术社区。它是集新闻、论坛、群组、Blog、文档、下载、读书、Tag、网摘、搜索、.NET、Java、游戏、视频、人才、外包、第二书店、《程序员》等多种项目于一体的大型综合性IT门户网站,它有非常强的专业性,其会员囊括了中国地区百分之九十以上的优秀程序员,在IT技术交流及其周边国内中第一位的网站。

中国经济周刊:塞班从霸主到弃子

来源: 中国经济周刊

中国经济周刊》记者 王辰越︱北京报道

“看着芬兰人将塞班扔进垃圾箱里,我是多么的伤心啊,当初诺基亚收购塞班时候,他们作出了多少承诺啊!”塞班的创立者之一保罗·库克顿无比惆怅地说。

塞班,智能手机系统领域曾经的当之无愧的老大。然而iPhone出现了,塞班的优势似乎只剩下价格了;接着,安卓出现了,塞班的价格优势不见了。塞班似乎成了怀旧者的专属。

微软的头号敌人

塞班公司成立于1998年6月,由当时英国著名手持电脑公司Psion(宝意昂)的软件部门拆分而来,著名手机厂商爱立信、诺基亚、松下、摩托罗拉共同投资建立。

“我们当时想要成立一家新的公司,一家手机公司,这家公司的股东应该是当时最领先的两家手机厂商——爱立信和诺基亚。这就是我当时兴奋的原因。”Paul Cockerton对《中国经济周刊》回忆道。

与此同时,意图染指手机领域的比尔·盖茨,也在不断地向诺基亚当时的CEO欧利拉(Jorma Ollila)示好。

然而在欧利拉的计划中,根本没有微软的位置。欧利拉并不想和PC 领域的硬件厂商一样,只是给微软当苦力。

塞班的出现恰好迎合了欧利拉的计划。于是,欧利拉婉拒了盖茨的好意。

1998年6月24日,塞班成立,愤怒的盖茨写下了那封著名的备忘录:“不管塞班做了什么,对我们都是有害的。”

1999年3月,刚刚成立9个月的塞班公司,推出了Symbian5.0操作系统,它集成了通信网络、无线文字、网页浏览、电子邮件等功能,支持Java应用,能够运行小型的第三方软件,比微软的WindowsCE更易用。同年,塞班公司被美国媒体评为“综合评定最佳”和“最具长期潜力”的公司。

2000年,全球第一款基于塞班操作系统的手机——爱立信R380诞生。此后,索尼、三洋、富士通、索尼爱立信也先后获得了塞班操作系统的许可证。庞大的塞班联盟就此形成,当时全球著名的手机厂商几乎囊括殆尽。2002年左右,搭载塞班系统的智能手机越来越多。

“在接下来的一段时间里,我们越来越让微软讨厌了,越来越多的塞班手机的推出逐渐占领了中低端市场。”保罗·库克顿说。

狂怒的微软也着手开发下一代面向智能手机的系统,盖茨给这个系统起名叫做Stinger,即美军的“毒刺”导弹,用意很明显,这将是一颗击败塞班的“毒刺”。

然而,盖茨的企图再一次落空了。

诺基亚庇护下的塞班帝国

在欧利拉看来,塞班一直都是帮助诺基亚坐上智能手机领域头把交椅的功臣。

塞班公司成立时,诺基亚在持股数量上位于第三。然而在市场规模上,诺基亚却是塞班成员中的带头大哥。

2003年的智能手机系统市场份额中,塞班占有市场份额的66.6%,微软则只有可怜巴巴的22.5%。

2004年2月,诺基亚收购了Psion公司持有的价值大约1.357亿英镑的塞班公司股权,至此,诺基亚持有的塞班公司的股权已经达到了63.3%。

手机业界翘楚诺基亚,市场占有率最高的智能手机系统塞班,双雄联手,风光一时无两。在塞班看来,自己的命运已和诺基亚紧紧联系到了一起。

2005年,全球智能手机领域大势已定。微软的Stinger无疾而终,Windows系列手机系统依然无法撼动诺基亚庇护下的塞班帝国。

2006年,搭载塞班系统的智能手机出货量达到了一亿部,经过八年和微软斗智斗勇的艰苦奋战,诺基亚和塞班似乎隐约看见了未来的辉煌。

然而,天有不测风云。

塞班将死?

2007年初,乔布斯带着iPhone闪亮登场,这个一向自负的天才放话说,“要重新发明手机”。

身居高位的诺基亚,对于这个“做音乐的”不屑一顾。“苹果需要将自己的品牌知名度转化成市场份额,这需要一段时间。”诺基亚当时的CEO这样鼓励自己的员工。而乔布斯当时对塞班也表现得很客气:“诺基亚Symbian系统的签名证书模式,是非常值得借鉴的。”

塞班没有意识到自己的危险处境。

2007年11月5日,谷歌的安卓系统发布。随着安卓在智能手机领域的迅速攻城略地,塞班开始招架不住了。

2008年5月,诺基亚时任CEO康培凯警告说:“传统上,苹果、Google、微软等公司不是我们的竞争对手,但现在,我们必须要应对他们带来的挑战。”同年6月,诺基亚宣布收购塞班公司,使之成为自己的全资子公司。但是,塞班的颓势已无法挽回。搭载iOS系统的iPhone和搭载安卓系统的HTC,逐渐成为消费者的新欢。

虽然瘦死的骆驼比马大,在市场占有率上,塞班仍然是老大,但是人们津津乐道的已经变成了愤怒的小鸟和越做越大的超大电容屏。

安卓和iOS带来的流畅让塞班的缺陷开始逐渐显现。网易手机频道主编骆峰向《中国经济周刊》介绍说:“塞班在编写之初,主要功能着重于打电话时的信号通畅。但对于消费者来说,如今的手机已不仅仅是打电话发短信了,更多的是娱乐。塞班对触摸屏、多媒体、新操作界面的支持都不好,在同PC以及互联网的交互以及应用方面的扩展性上都存在着先天不足,和安卓、苹果一比,相去甚远。”

2010年底,安卓和iOS的市场占有率之和已经超过了50%,超过了塞班,并且这个数字仍然在上升。在下坡路上越走越远的塞班,无奈之下,作出了一个艰难的决定。

2011年2月11日,诺基亚和老对头微软的手握在了一起,诺基亚CEO埃洛普表示,诺基亚将和微软达成广泛的战略合作关系,诺基亚将把微软的WP7系统当做主要系统;同时,决定将塞班的继续开发等各项工作转交给埃森哲公司,诺基亚将不再提供对塞班系统进行更新。

Oracle默认端口清单

服务 端口 产品 更改办法
Oracle HTTP Server listen port / Oracle HTTP Server port 80 Oracle Application Server Edit httpd.conf and restart OHS
Oracle Internet Directory(non-SSL) 389 Oracle Application Server
Oracle HTTP Server SSL port 443 Oracle Application Server Edit httpd.conf and restart OHS
Oracle Internet Directory(SSL) 636 Oracle Application Server
Oracle Net Listener / Enterprise Manager Repository port 1521 Oracle Application Server / Oracle Database Edit listener.ora and restart listener
Oracle Net Listener 1526 Oracle Database Edit listener.ora and restart listener
Oracle Names 1575 Oracle Database Edit names.ora and restart names server
Oracle Connection Manager (CMAN) 1630 Oracle Connection Manager Edit cman.ora and restart Connection Manager
Oracle JDBC for Rdb Thin Server 1701 Oracle Rdb
Oracle Intelligent Agent 1748 Oracle Application Server snmp_rw.ora
Oracle Intelligent Agent 1754 Oracle Application Server snmp_rw.ora
Oracle Intelligent Agent 1808 Oracle Application Server snmp_rw.ora
Oracle Intelligent Agent 1809 Oracle Application Server snmp_rw.ora
Enterprise Manager Servlet port SSL 1810 Oracle Enterprise Manager
Oracle Connection Manager Admin (CMAN) 1830 Oracle Connection Manager (CMAN) Edit cman.ora and restart Connection Manager
Enterprise ManagerAgent port 1831 Oracle Enterprise Manager
Enterprise Manager RMI port 1850 Oracle Enterprise Manager
Oracle XMLDB FTP Port 2100 Oracle Database change dbms_xdb.cfg_update
Oracle GIOP IIOP 2481 Oracle Database Edit listener.ora/init.ora and restart listener/database
Oracle GIOP IIOP for SSL 2482 Oracle Database Edit listener.ora/init.ora and restart listener/database
Oracle OC4J RMI 3201 Oracle Application Server
Oracle OC4J AJP 3301 Oracle Application Server
Enterprise Manager Reporting port 3339 Oracle Application Server Edit oem_webstage/oem.conf and restart OHS
Oracle OC4J IIOP 3401 Oracle Application Server
Oracle OC4J IIOPS1 3501 Oracle Application Server
Oracle OC4J IIOPS2 3601 Oracle Application Server
Oracle OC4J JMS 3701 Oracle Application Server
Oracle9iAS Web Cache Admin port 4000 Oracle Application Server Webcache Admin GUI or webcache.xml
Oracle9iAS Web Cache Invalidation port 4001 Oracle Application Server Webcache Admin GUI or webcache.xml
Oracle9iAS Web Cache Statistics port 4002 Oracle Application Server Webcache Admin GUI or webcache.xml
Oracle Internet Directory(SSL) 4031 Oracle Application Server
Oracle Internet Directory(non-SSL) 4032 Oracle Application Server
OracleAS Certificate Authority (OCA) – Server Authentication 4400 Oracle Application Server
OracleAS Certificate Authority (OCA) – Mutual Authentication 4401 Oracle Application Server
Oracle HTTP Server SSL port 4443 Oracle Application Server Edit httpd.conf and restart OHS
Oracle9iAS Web Cache HTTP Listen(SSL) port 4444 Oracle Application Server Webcache Admin GUI or webcache.xml
Oracle TimesTen 4662 Oracle TimesTen
Oracle TimesTen 4758 Oracle TimesTen
Oracle TimesTen 4759 Oracle TimesTen
Oracle TimesTen 4761 Oracle TimesTen
Oracle TimesTen 4764 Oracle TimesTen
Oracle TimesTen 4766 Oracle TimesTen
Oracle TimesTen 4767 Oracle TimesTen
Oracle Enterprise Manager Web Console 5500 Oracle Enterprise Manager Web
iSQLPlus 10g 5560 Oracle i*SQLPlus
iSQLPlus 10g 5580 Oracle i*SQLPlus RMI Port
Oracle Notification Service request port 6003 Oracle Application Server
Oracle Notification Service local port 6100 Oracle Application Server
Oracle Notification Service remote port 6200 Oracle Application Server
Oracle9iAS Clickstream Collector Agent 6668 Oracle Application Server
Java Object Cache port 7000 Oracle Application Server
DCM Java Object Cache port 7100 Oracle Application Server
Oracle HTTP Server Diagnostic Port 7200 Oracle Application Server
Oracle HTTP Server Port Tunneling 7501 Oracle Application Server
Oracle HTTP Server listen port / Oracle HTTP Server port 7777 Oracle Application Server Edit httpd.conf and restart OHS
Oracle9iAS Web Cache HTTP Listen(non-SSL) port 7779 Oracle Application Server Webcache Admin GUI or webcache.xml
Oracle HTTP Server Jserv port 8007 Oracle Application Server
Oracle XMLDB HTTP port 8080 Oracle Database change dbms_xdb.cfg_update
OC4J Forms / Reports Instance 8888 Oracle Developer Suite
OC4J Forms / Reports Instance 8889 Oracle Developer Suite
Oracle Forms Server 6 / 6i 9000 Oracle Application Server
Oracle SOAP Server 9998 Oracle Application Server
OS Agent 14000 Oracle Application Server
Oracle Times Ten 15000 Oracle Times Ten
Oracle Times Ten 15002 Oracle Times Ten
Oracle Times Ten 15004 Oracle Times Ten
Log Loader 44000 Oracle Enterprise Manager

梅西当选首届欧洲最佳球员 足坛之王再度加冕

55175886

梅西荣膺新科欧洲最佳球员

腾讯体育讯 北京时间8月26日凌晨,欧足联在摩纳哥蒙特卡洛举行了盛大的欧冠抽签暨颁奖仪式,在引人瞩目的“欧洲最佳球员”(UEFA BEST PLAYER IN EUROPE AWARD)奖项的争夺中,巴萨球星梅西(微博 博客)笑到了最后。阿根廷球星以38票的优势荣膺首届欧洲足球先生,哈维(微博)和C罗分别得到11票和3票。梅西随后也通过腾讯微博第一时间感谢了支持帮助他获得成绩的队友们。

众所周知,在与国际足联的“世界足球先生”奖项合并前,由《法国足球》杂志社主办的“欧洲金球奖”,是世界足坛上最富盛名,影响力最大的足球奖项评选。作为欧足联主席,普拉蒂尼并不甘心“欧洲足球先生”的消亡,在他的倡议下,欧足联决定推出新的“欧洲足球先生”奖项,他们和欧洲体育媒体联盟(ESM)合作,由他们作为欧洲最佳球员的主要评审机构。

新“欧洲足球先生”的评审团将包括53个欧洲国家的体育记者,每名记者按照排名顺序提供一份3人的最佳球员名单,第一选择的球员得到5分,第二选择的球员得到3分,第三选择的球员得到1分。在第一轮投票中,得票数最多的三名球员,将入围到最后一轮的投票中,欧足联已经在7月25日公布了入围决选的三人,分别是梅西、哈维和C罗。此前入围了FIFA金球奖最终候选的伊涅斯塔(微博)以微弱的差距落选。

此次评选,53名体育记者在现场即时投票,主持人将梅西、哈维和C罗三人请到台上,并进行了短暂的采访。经过紧张的投票,欧足联主席普拉蒂尼现身将沉甸甸的“欧洲足球先生”奖座交到了梅西手里,奖座的背后已经刻好了梅西的名字。

作为当今足坛最炙手可热的球星,梅西在过去一个赛季,拿出了非常精彩的表现,他在各项赛事中55次出场打进53球并有24次助攻,跟随巴萨夺得西甲、欧冠和西班牙超级杯三项冠军,虽然在国家队赛事中表现比较平淡,但梅西仍然得到了绝大多数人的认可,这也是跳蚤继荣膺首届FIFA金球奖后,再获殊荣。

(kerlon)

WordPress CKEditor smiley表情图标定制化

WordPress默认的编辑器不是很好用,我习惯将它替换成CKEditor,安装CKEditor For WordPress即可。安装后编辑器将被替换,评论框的编辑器默认会被替换成CKEditor,有时候会导致模板样式错乱,可以在CKEditor->Basic Settings中禁用。

CKEditor默认的smiley表情不适合中国,我们可以将表情改造一下换成自己喜欢的表情,方法如下。

1. 下载你想要的表情包,一般是gif格式的图片,假设这些图片所在的文件夹叫mysmiley,将该文件夹拷贝到插件的表情目录中,路径为

wp-content/plugins/ckeditor-for-wordpress/ckeditor/plugins/smiley/images

2. 修改配置文件wp-content/plugins/ckeditor-for-wordpress/ckeditor.config.js

在CKEDITOR.editorConfig = function(config) { … }中添加如下代码

config.smiley_path=CKEDITOR.basePath+’plugins/smiley/images/mysmiley/’;

config.smiley_images=[‘1.gif’,’2.gif’];

第一行代码定义了表情文件所在的文件夹的路径,第二行是表情文件名字的数组。这样点击编辑器的表情按钮,自定义图标就会显示出来。

当你的图标过多时,由于显示不开会导致一部分图标无法显示,而且表情图标对话框没有滚动条,为了避免这种问题,我们可以修改一下css文件。找到wp-content/plugins/ckeditor-for-wordpress/ckeditor/skins/kama/dialog.css(假定你使用了默认的皮肤kama),在最后一行添加如下代码

.cke_dialog_ui_html{height:350px;overflow:auto;}

这个文件是经过压缩的,所以添加代码时注意不要有空格。height定义对话框的高度,可以根据自己的需要写。这样表情多时会出现滚动条,就可以正常使用了。如果你的表情很少,就不要做这个改动,不然显示会出问题。

下面是几个已经做好的表情包和大家分享一下,配置语句写在压缩包的readme.txt中

1. 洋葱头系列表情

下载地址:CKEditor洋葱头表情图标下载

2. qq表情图标

下载地址:CKEditor QQ表情

基于xmlrpc的PingBack 规范形象介绍 在wordpress中广泛使用

Pingback是在博客圈的背景下诞生的一个新鲜玩意,说白了,其目的等同于csdn上的trackback。不过,它有更加完善的机制,而且用php很容易实现。
传统的博客是这样的,我写了篇很牛X的文章,你不巧看到了,但是我的观点你不同意,而且更不巧,你还非常喜欢抬杠,为了能和我抬杠,你就得在我的博客上留言,而且你啰里啰唆的打了1000个字上去。问题是,我不喜欢抬杠,所以我限制留言字数为100字。
问题来了,如果你对我的博客文章有几K个字节的感想,单单发表在我的博客评论里显得有点屈才。你可以在你的博客里重新发布一篇文章,为了让我知道你的大作,以便我们抬杠,你还得给我发封电子邮件告诉我。这个流程虽然不怎么复杂,但还是很麻烦。
Pingback简化了这个流程,只要在你啰里啰唆的评论里加个超链接,指向我的文章。我就会收到有关你的评论,而且还会自动显示在我的博客评论中。
神奇吧,神奇的背后是老瓶装新酒。要理解Pingback,最好有点web服务的知识,不知道也没关系,所谓web服务就是俩服务器之间没事倒腾数据玩,当然,俩服务器得使用同一种语言进行交流。目前,有两种倒腾语言,SOAP和xmlrpc,php5已全面支持。SOAP稳定可靠,但是很复杂,xmlrpc就简单实用的多。pingback就是基于xmlrpc实现的。
来看看具体的操作流程:
1、首先我发布文章,我的文章地址是:http://www.renseng.com/learning/dede-cms-remove-page-index-html.html。如果你乐意打开这个网页,并看下源文件,会注意到,在页面上有个link元素,内容是<link rel=”pingback” href=”http://www.renseng.com/xmlrpc.php” />。这玩意标示了一个pingback服务器的地址:http://www.renseng.com/xmlrpc.php。
2、然后你看了文章,开始在你的博客写你的啰里啰唆的评论,评论一开始可能会这样:carche在<a href=”http://www.renseng.com/learning/dede-cms-remove-page-index-html.html”>CURL……….</a>中 提到,我对此不敢苟同…………….
3、之后提交你的文章,如果你的blog系统是wordpress架构,当你提交文章之后,wordpress会扫描你文章中提到的链接,这时它发现了http://www.renseng.com/learning/dede-cms-remove-page-index-html.html这个链接。wordpress会抓取这篇文章,然后用一个像这样的正则表达式  ”/<link\s+rel=\”?pingback\”?\s+href=\”?(^>*)\”?\s+>/” 来寻找pingback服务器地址,找到这个地址后,开始倒腾数据。
4、你的blog系统会给找到的pingback服务器发送以下信息:你好,在某某博客文章中曾经引用了http://www.renseng.com/learning/dede-cms-remove-page-index-html.html这个超链接。
5、我的pingback服务器收到信息之后,先检查一下是不是确实有这回事,如果是就返回随便什么字符;如果不是,就返回一段错误码。之后,我的blog系统会根据你请求的信息,到你的评论里面抓取内容,并显示在我的blog评论中。
大致流程是这样的,如果要看详细的规范,参考:http://www.hixie.ch/specs/pingback/pingback

什么样的女人会被老公一生捧在手心?

1[9]   

 2 2 

在老公眼中每个女人都应是一朵永不凋谢的花。
如果有一天,你感觉到自己在老公眼中,已经开始失去某种独特的魅力,那么聪明的女人应该做的,不是怨恨老公的花心,不是埋怨世界的诱惑,不应任其漠视,甚至摆出一副弃妇的可怜相,怨妇的可悲相,而是该认真地反省一下自身了。
1、你是否还在意自己在他面前的形像,这个形像不仅包括衣着、举止、谈吐、更包括内在的修练,如含蓄、如知识面、如韵味、如对人和事的包容之心、爱心、对生活和事物的热情度等。
2、生活比树叶还稠。人活在这个世上,会遭遇到很多不如意事。老公其实比你面对的更沉重更繁多,他肩上的担子更重,其实,他的表面坚强,但他的身心也许远比女人更脆弱。即使年轻时他是处处关护你的,日积月累,你必得学会关护他。而且随着年纪的增长,你还得能像母亲爱孩子那样去小心体贴他,才能使他在外面的风雨之后,感受到家的温暖,越来越依恋家的安全与安宁。
3、是最重要的,也往往是女人会忽略的。女人往往会认为,老公理当养家。其实这个世界上,真正成功的人并不多。绝大多数都是为了基本的生存而努力,为孩子、老人、为基本的生存环境,为房、为车、为暖气费、为人情来往、为体面一些状态。女人,也必得努力分担老公在养家上的辛苦。其实很多女人也这样做了。但是你不能以为你也和丈夫一样挣钱并工作了,而抱怨老公,抱怨生活,怨天尤人,甚至怒气冲冲。
其实如果你天命如此,不管你当初选择嫁给的是谁,日子一样还有别的意料不到的烦恼和坎坷。即使你不嫁人,也好不到哪里去。因为夫妻相互搀扶着过日子,相互关爱,日子可能过得更容易些。你也许只能显得更年轻一些,身心也更为健康一些。
4、有些女人经过努力和拚打,可能会比男人对家的贡献更大一些。更要切记:为家做了些贡献后,女人更不能不可一世,颐指气使,这样你就真的是尊贵威严的女王,做为丈夫,除非他是天生的爱做奴仆,他心理最需要的,你必得首先仍旧还要是一个妻子。
很多有本事的女人,一旦遗弃原来的伴侣,会发觉好的、新的伴侣并不像原来想的那么容易寻到。如果你是聪明女人乘你有成就,最该扶持和提携的人,其实恰恰就是你身边的人。但切记:要不动声色,不要处处提醒他报恩记恩。
你对别人付出的,不管是任何人,也不管是你多么亲近的人,你提醒别人记住的次数越多,层度越重,你得到的结果正好相反。如果不信,你换位思考一下:哪个曾给了你帮助,他老是在你面前不停地提醒你记住,你会怎么想?你会不会想:他老提这个,是怕我忘了?还是想让我加倍回报?
其实不管你嫁了谁,你都一样还得这么活着。你的青春一样都要渐渐失去,红颜仍旧要一天天的裉却。虽说你衰老的程度与生活有关,但是你的衰老,其实与丈夫无关。
5、在这世界上,真正能天天窝在沙发里看书、上网、看肥皂剧,而不为家庭、不为孩子、也不为丈夫操一点心的主妇没有几个。真正那样的女人,即使你再美丽年轻,你的美丽也会随着无聊的日子而渐渐变得苍白失血。没有一个女人魅力,会永远无所事事还能始终保鲜的。
随着年纪的增长女人的魅力,说穿了在于内在的修练,在于能力的增长,在于智慧和知识的增加。武则天有一句话,应该对每人女人都极有用处:以色侍君,岂能长久?
6、丈夫为什么会有恋母情结?那正好说明了男人其实心理上一样渴望关爱的。
对于孩子女人是母亲,是慈祥的可依可靠的安全的港湾。对于丈夫年长日久,女人其实也一定会是丈夫可依可靠的宁静港湾。你表层要把他当成天来爱,内心你还要允许他有时还是个大孩子。要鼓励他的自信,有时偶尔也要严厉指出他的沉沦。
但更多的仍旧还是让他感觉到你对他的依恋和依赖,你也可以随时玩些小花招儿——是那种不断给他些意外的惊喜的小花招儿,他会越来越贪恋你的这份“母爱”。当然,在他明显无理时,而且劝说他不动时,你也可以突然玩一下“假失踪”,让他感觉一下失去你的孤独和失落。
7、爱笑,爱哭也许都不是丈夫憎恶你的原因。相反还是他怜惜你的理由。
可怕的是,你的怒气和怨气,你的永无止境的抱怨,会使原本十分热爱你甚至离不开你的丈夫离你而去。即使他在形体上还没有离开你,他的心也迟早会离你而去。夫妻有了一点矛盾,切忌不要呕气。“把儿活”的男人女人,都比死倔彆子的可爱,易相处。有了不快,迅速忘记,或是迅速找别的有趣的话题茬开,才是聪明的妻子。
智慧的女人,会赞美丈夫。晦气的女人,只知道报怨他人,得到的也只能是晦气。比如:丈夫突然心血来潮,为你做了一碗面,虽说很难吃,你也千万不要打击他的积极性。他出差回来,给你带了一件衣服,虽说不合你的意,可是,他都是对你的一份惦记和情意啊。此时,你该做的是赞美,由衷地赞美他对你的这份情爱,感受和品味这份情,他会越来越爱你,乐意为你付出。
姐妹们人活在这个世上,更多的时间是不如意的,是艰难的。所以当你们夫妻回到家中,彼此能做的,能维护幸福一生的事,就是尽量删除不良情绪的病毒,不要因为亲人之间没必要的内斗和内耗,损失毁了你们享受快乐、享受幸福、享受宁静的空间。
家是属于你们共同的天地。在这个世界上,有这个家,太不容易了,有这份夫妻情份,也是几百年多少世修来的缘份。只要你宽厚了,努力了,做到了,悟透了,不管是在生活中,还是在工作中,你不仅能成为一个被丈夫宠爱的幸福的快乐的小女人,也会是一个被朋友和同事,被父母和兄妹欢迎的大女子。 
333
如何哄得丈夫一生一世永远爱你不变? 如何做才能永远不会失去丈夫的爱?
有一种现象,一种婚姻中很可怕和的现象:在许多老年人当中,到了生命老迈时期,往往很多家庭,只剩下一位老年女的,丈夫会比妻子要早许多年就因为种种病因而过世了。
我们到晚年,不管年纪多大,也不管身体状态怎么样,只要有老公始终陪着你,就算活到八十,活到九十,活到一百,你也不会感到凄凉和孤独。即使到了暮年,夫妻相伴,白天一起看电视看报纸听收音机,一起旅游一起到好朋友家喝茶聊天,一起到花园和草坪散步,那份快乐,那份自得,其实是多少儿女都无法替代的,也是任何人都无法替代的。更何况现在的人,大多也只能有一个孩子。
按一般人的认识,男人比女人坚强,女人生儿育女,肯定身体不如男人。可是为什么许多老人,大多都是老公撇下老妻先走了呢?其实,男人并非像女人以为的那样坚强。他们的坚强,是因为他们把人生遇到的所有屈辱、失落、挫败、病痛、沮丧、生活的压力和人生的沉重,全都隐忍在自己心中,不肯说出来,不肯表现出来罢。而所有的这些隐忍在心的情绪,其实,全都像一个又一个的“电脑病毒”积累到最后,结果就是崩盘,死机。
男人为什么会醺酒?为什么会抽烟?为什么会沉思?
更多的原因,其实是他心理已经积存了太多的病毒。就因为他是男人,他不能轻易流泪,更不能轻易向人诉说。他必得在妻子,在儿女,在父母面前做出硬汉子的形象。
而女人却习惯哪怕一点点的委屈,都会向丈夫,向父母,向姐妹们,向好友倾诉出来,女人病毒不会积存。她会在每一次的倾诉和泪水中,清理皆净。
而人类几乎所有的疾病,更多的原因就是郁积出来的。所以情绪爱喧泄出来的女人,往往寿命长久。而男人却早于妻子离开人世。
44 
怎么样才能让老公尽可能活得更长久尽可能陪你到老?从现在做立即行动!那么你该着手做些什么事?
一、当老公回到家中,尽可能给他营造一个温馨轻松的环境。其实没有重要客人来访,干嘛一定非要把地拖得一尘不染?衣服干嘛非要当时就洗?为什么一定要把本该在家中休闲放松的时间,弄得两人都紧紧张张的?而夫妻两口,磨嘴的时候,多是家务。
二、当老公在外面不快时,即使他不说,你也要尽可能去察觉,一面用爱心关怀他,给他做个下酒菜,倒一杯酒,讲些幽默的段子,先转移他的不快,接着慢慢寻问。
如果他不想告诉你,甚至不想提及,你一定不要再继续打听。他一定是受了很重的内伤,此时男人是习惯自己舔伤口的。你能做的是一个字:爱!体贴!温柔!这虽不一定能排解他的内心的郁积和伤口,但一定会是止痛剂和消炎药。
如果他肯说了,那么不管他说出来的是什么事,你都不能在此时抱怨他了。你能做的,就是开导和疏导他转移不良情绪。其实他的所有不快,说穿了决不会超过“名利”二字的范围。再则就是和人起了争执,受了领导的指责。
如果你最在意的是老公的健康,是老公能陪你到老,你就不该最在意丈夫的名利,命中该有的终须会有。没有的挣死,也来不了。硬撑着挣来的,还会失去。不在这方面失去,必会在另一方面失去,这是铁定的规律。 你如果不在意了,丈夫会活得十分轻松。这种轻松恰恰会成就你们得到许多的惊喜!
三、酒不可过量。酒场上逞英雄的,其实大家表面夸他,转脸都会当他是傻瓜。烟如果实在断不了,尽可能不要吸劣质烟,但一定说服他少吸烟。
四、如果必须得和年老的婆母同住,没有条件和并不年老的婆母分开居住,你就一定要接受现实,尽量和婆母搞好关系。因为你容不下丈夫的母亲,你们的矛盾,你们的每一场战争,都必会减弱丈夫数月一年甚至几年的寿命。反过来他如果天天和你母亲不和吵闹,你该怎么办?压抑而无奈又夹在板中的你,肯定一样也会减寿的 。
做到以上四点,下面的就容易多了:
你要是爱你丈夫,就不要多弄那些煎炸烹炒的食物给他吃,这个不能由着他的性子。多做一些素菜和凉拌菜。要像哄孩子那样哄他吃这些。
当他吃完这些清淡的素菜之后,他也会发觉,过去那种老吃油水大的煎炸食物后,莫名其妙的头昏脑涨,无精打彩和昏昏欲睡等等说不出原因的不良状态,会骤然改善。
你要是想丈夫陪你到老,你要和尽可能让丈夫参回有氧活动:跑步、快走、打球、旅行、爬山、打拳、哪怕没有条件,在屋内活动一下筋骨,地板上打几个滚,都一样能起到锻炼的目的。
你要想你丈夫陪你到生命的尽头,你就要关护他像关护孩子一样。只要你是真爱他那个人的,而没有太多的附加条件,你一定乐意试试。
你这样做了你会发现,他会活得很开心,会活得很热烈,会活得很有成就感,会活得很健康,他一定会回报你的。那是你始料不及的。
即使他很普通,但他一定是真爱你的,他也一定不会先走,他会一直陪着你,活得很久很久,一直陪你到生命的尽头。
姐妹们,当我们老到白发苍苍时,当我们老到腿脚酸疼时,当我们老到腰弯,可是只要有老公陪在身边,你会知道千万资产,也不如一个陪了你一生一世的老公为你端来一杯热茶,数来几片药片。
当我们老到满脸皱纹时,多少昂贵的礼服和化妆品,也不如老公轻轻地挽着你的胳臂走在夕阳的草丛中。当我们老得只能在摇椅里甚至轮椅里摇啊推时,你会发觉,什么豪宅权威功名,也抵不上夜半变天时,老公为你加打开电热毯和一声问侯。
为什么要从现在做起而不是将来?
因为一棵树,越早矫正它就直得越早,老公也如此,越早注意对他的关爱,他的身心就会一直健康,即使有了病毒,也会被你的爱及时清除,而不至于积留到未来。
你能做到这些,能使他的身心得到健康的同时,因为你们是一起生活的,所以你自己也必将快乐和健康,在督促他进取的同时,你也必将懂得努力修炼,增加自己的核心竞争力。
姐妹们!为了你的晚年不会冷清孤独,为了你和所爱的人都长寿并健康,其实这世上其它的身外之物,又算得了什么?现在就开始行动吧!

偶尔看到,非常喜欢,转载过来于朋友们分享,所有的爱都是从点滴做起
朋友们好好珍惜爱你的人和你爱的人哦!

服务员冲厨房喊道:"出来个师傅,帮这位顾客把这块牛肉切一下!"

男子喊道:"服务员,过来一下!" 服务员:"您好,什么事?" 男子怒问:"我20块钱一碗的牛肉面,怎么才一块牛肉?" 服务员:"先生,那您希望有几块?" 男子想了想说:"怎么也得五六块牛肉吧。" 服务员冲厨房喊道:"出来个师傅,帮这位顾客把这块牛肉切一下!"

留意留意!!有没有这样的人?外表活泼内心孤僻的人会做的事

【外表活泼内心孤僻的人会做的事】1手机不离身;2对待不同的人有不同的性格;3从小懂得很多道理;4有时候很神经 有时候很镇静;5会因为别人一句话伤心 但不会被发现;6安慰很多人 但自己却没人安慰;7会怀念从前 讨厌现在;8有时候会笑的没心没肺 有时却很沉默。你是这样吗?

Live Writer WordPress XMLRPC Error Invalid

The response to the metaWeblog.newPost method received from the weblog server was invalid:
Invalid response document returned from XmlRpc server

前几天用lw发文章突然出现上面错误,在网上找了很多方法都没能解决,最后仔细回想,我最近更改了主题

我查看了最近更改的所有文件,最后发现 functions.php文件是UTF-8 带BOM的,赶紧移除,问题解决。

小结:用windows 平台编辑UTF-8 编码文件,上传之前最后做一下移除BOM的操作,要不出现问题时找起来很费力气,因为程式是没有问题的