[技术杂谈]在百度搜索和360搜索中使用site命令的结果

在卢松松博客中看到一篇博客说百度搜索和360搜索对site命令都有所改变,于是Jhonse技术博客也来看看百度搜索和360搜索对本博客有什么区别以及有什么影响。请看如下截图:

百度搜索:

20140428092018

 

360搜索

20140428092144

 

结果得出:

百度->收录诊断(数据来源于百度站长平台)

20140428092612

 

百度-> 备案信息

20140428092709

 

百度->安全级别

20140428093010

 

360->安全级别

20140428093107

 

最后得出百度搜索和360搜索都检测出本博客有安全漏洞,百度搜索的的结果来源于安全联盟,而360的搜索结果来源于360网站安全检测,两者最大的区别是:安全联盟没有提示存在漏洞的问题(页面),而360网站安全检测有提示存在漏洞的问题(页面)以及解决方案,请看截图:

安全联盟

20140428093642

 

360网站安全检测

20140428093849

 

说明:安全联盟也提供了怎么防止被黑的方案,不过需要找安全专家以及开通安全防护

20140428094212

 

最后一个不同点:安全联盟不能重新检测漏洞,而360网站安全检测可以重新检查漏洞。

对比完毕!若有问题,欢迎大家多多留言,交流讨论!

[windows]解决”HTTP 错误 404.17 – Not Found 请求的内容似乎是脚本,因而将无法由静态文件处”问题

之前总是用 [windows]在windows系统中配置php环境 方法来搭建php环境,记得当时的操作系统windows service 2003,所以只要按着该方法来操作,就能成功搭建php环境,而现在的操作系统是windows service 2008,而且还是64位的,所以按着以上方法来搭建的时候,就提示“HTTP 错误 404.17 – Not Found 请求的内容似乎是脚本,因而将无法由静态文件处”,网页无法打开。请看如下截图:

QQ截图20140406191011

 

此等问题,只好网上查资料来解决了。

出错问题在windows service 2008系统是64位的,而我用的aliyun的集成软件是32位的,所以就报错了。

解决方法:

第一步: 打开应用程序池

QQ截图20140406191149

 

第二步: 设置应用程序池默认设置

QQ截图20140406191235

第三步: 找到设置启用32位应用程序

QQ截图20140406191303

 

第四步: 设置其值为true

QQ截图20140406191324

 

第五步: 成功解决问题

 

[windows]解决IIS提示的”另一个程序正在使用此文件,进程无法访问。(异常来自HRESULT:0x80070020)”问题

在一台新的windows service 2008服务器上部署网站,结果总是开启不了网站,总是提示“另一个程序正在使用此文件,进程无法访问。(异常来自HRESULT:0x80070020)”,显示停止状态。请看截图:

64375496gc6071c645633&690

 

看到这问题傻眼了,从来没有遇到此等问题,这够纠结的。

于是重新再创建一个站,但是端口号使用的是8080,而不是80,一运行OK,网站能正常访问。

这问题就很明显了,80端口不能正常开启站点。

于是就通过cmd命令进入DOS模式窗口,看看80端口到底有没有打开。

命令: netstat -obna

查看端口信息得知80端口确实打开了,不过该端口被使用的程序是360企业版软件。

这样就知道为什么开启不了80端口的站点了,原来是80端口被其它程序占用了(360企业版软件)。

现在来解决问题,卸载360企业版软件(本来是想关闭360企业版软件的进程,但是提示为系统进程,无法关闭,所以考虑到的是卸载了。),然后重启IIS,一运行80端口站点。OK,运行成功,正常访问!…

有个疑问:为什么360企业版软件要占用80端口,我买个服务器来部署站点?难道让我采用8080端口?访问站点就在域名后面加:8080来访问么?

[技术排行榜]2014年4月编程语言排行榜:Perl跌至历史最低点

PS:一直关注php在编程语言排行榜的排名,今天出来的结果竟然被VB挤下去了,PHP从之前第六名下降到第七名,而VB由第七名上升到第六名,希望下个月PHP有所提升。大家可以看看其它语言的排名情况…

TIOBE2014年4月份编程语言排行榜出炉,尽管前三甲排名无变化为:C、Java、Objective-C,但是C和Java的份额均有所下降,但是幅度不明显;而 Objective-C则上涨了3.28%。

这个月Perl语言下降幅度较大。此前,我们曾说过如果Perl再不发力,以这种趋势发展下去兴许会跌出Top 10。果然这个月跌出TOP10,排名13位,跌入历史最低点。Perl加油啊!

设计者Larry Wall为了让在UNIX上进行报表处理的工作变得更方便,决定开发一个通用的脚本语言,于是Perl孕育而生。Perl是一种高级、通用、直译式、动态的程序语言,很多开发者喜欢它的理由是因其具备强力、稳定、成熟、可移植性等特点。

2014年4月编程语言排行榜TOP 20榜单:

5345ede03d69d

 

前10名编程语言长期走势图:

5345ec81275ef

 

以下是21-50编程语言排名:

5345ece7817bd

 

5345ecf697b02

 

后50名编程语言如下:

  • (Visual) FoxPro, 4th Dimension/4D, Arc, ATLAS, Automator, Avenue, Awk, Bash, BlitzMax, Bourne shell, cg, CL (OS/400), Clean, Common Lisp, Erlang, Factor, Felix, Forth, Haskell, Icon, Inform, Informix-4GL, J, JavaFX Script, Korn shell, LabVIEW, M4, Magic, Max/MSP, Mercury, Modula-2, Moto, NATURAL, OpenCL, PILOT, Programming Without Coding Technology, Pure Data, Q, Revolution, RPG (OS/400), S, Scheme, Slate, Smalltalk, SPARK, Standard ML, TOM, VBScript, VHDL, X10

必须声明,这个榜单本身采集的是英文世界的数据,虽然在反映趋势上有一些参考意义,但与中国的实际情况不完全符合,而且,这张采样本身也有相当大的局限性。

【说明】

TIOBE编程语言社区排行榜是编程语言流行趋势的一个指标,每月更新,这份排行榜排名基于互联网上有经验的程序员、课程和第三方厂商的数量。排名使用著名的搜索引擎(诸如Google、MSN、Yahoo!、Wikipedia、YouTube以及Baidu等)进行计算。请注意这个排行榜只是反映某个编程语言的热门程度,并不能说明一门编程语言好不好,或者一门语言所编写的代码数量多少。

[window]在windows 2003中部署iis、ftp、php、mysql、zend环境

总是有很多人问,如何在windows 2003中去部署php、mysql、zend环境,让windows服务器既支持asp/asp.net,也支持php。其实只要配置好php环境就可以实现以上需求。而IIS就是微软提供出来支持asp和asp.net。如何部署?请看如下教程:

第一步: 安装IIS+FTP(前提是windows没有安装IIS)

开始—-控制面板—-添加或删除程序

27_253667_9cf6fd9ec3b12ee

 

出现如下界面点击“添加/删除windows组件(a)

27_253667_4d2ff5607cfdd7a

 

出现如下界面

27_253667_00463f0b5d479f1

 

选择“应用程序服务器”

27_253667_0f0962b297b171b

 

点击图片中的“详细信息”

27_253667_c9872ca9c6b5e50

 

出现上面的图片“选中internet 信息服务(iis)”,点击图片中的“详细信息”

27_253667_02fa6f300f2e774

 

选中图片中的“文件传输协议(ftp)服务”然后点击“确定”

T1Z4TkXlVuXXbW8b._-664-318

 

点击图片中的“浏览”选中“c:\win2003_sys\disc1\i386”如图

说明:如果没有此文件,请自行下载iis文件包

T1xlK1FahfXXXsK.j4-486-307

点击图片中的“打开”iis就开始安装了。如果系统是windows2003 64位的话该文件则位于“C:/win2003_sys/disc1/AMD64”下面

27_253667_bdaab867e75e81b

出现这个表示iis 和ftp 已经安装好了

第二步:  安装php

请点击查看 [windows]在windows系统中配置php环境

第三步: 安装mysql

请点击查看 [windows] 搭建mysql环境

第四步:  安装Zend环境

请点击查看 [windows] 部署zend环境

第五步:  安装ftp

请参照 [Windows]安装和使用FTP for Windows2008

第六步: 完毕!

亲们! 懂了么?快快留言吧!…

 

[windows] 部署zend环境

如果你没有zend加密过的程序 强烈建议你不安装,如果有那就必须安装,不然程序运行不了。

首先下载zend环境包,建议使用阿里云的集成压缩包:

http://soft.phpwind.me/top/iis6/websoft.zip 这个软件包已经包含 php 5.2.17 mysql 5.1.63  zend  phpwind 8.7 phpmyadmin 3.5.2 省去大家到各个网站找包的时间。

下载完成后解压拷贝到d盘,目录结构如下图:

27_253667_081ab742ee64e96

双击d:\websoft\ ZendOptimizer-3.3.3-Windows-i386.exe 就开始安装了,除了安装目录,其他的默认就可以了,看图操作

27_253667_8cba42e35f3142e

27_253667_f974be1ae034cb4

27_253667_1b6c9e5516218ea

27_253667_42a498cc6adcfee

27_253667_ec2d83cfb580724

如图zend程序需要我们提供php.ini在那个目录,之前我们拷贝php.ini 到了c:\windows 我们就不需要改变了

27_253667_a2fa6ca199faaae

27_253667_2d843cf066a9a30

27_253667_a0bde48669ff964

点击“install”后出现图片中的对话框,选择“是”然后程序就开始安装了

27_253667_911f787cb1b0517

出现这个界面表上zend 已经安装好了.

[windows] 搭建mysql环境

首先下载mysql环境包,建议使用阿里云的集成压缩包:

http://soft.phpwind.me/top/iis6/websoft.zip 这个软件包已经包含 php 5.2.17 mysql 5.1.63  zend  phpwind 8.7 phpmyadmin 3.5.2 省去大家到各个网站找包的时间。

下载完成后解压拷贝到d盘,目录结构如下图:

27_253667_081ab742ee64e96

双击d:\websoft\mysql-essential-5.1.63-win32.msi 就开始安装了 看图操作

27_253667_4ad123a60b7ed65

出现上面的界面,不要点cancel 那是取消, 等等

27_253667_fd756b2ab9d33ad

选择“custom”然后点“next” 出现下面的界面

27_253667_17354161f954128

这个是选择mysql 安装的位置,默认在c盘,我们点“change”选择d:\websoft\mysql-5.1

27_253667_e98a5629ae88f68

选择点击“ok”切换到之前的操作画面

27_253667_91e7e337d6e2cd5

点击mysql server datafiles 默认也是在c盘,点击“change”选择d:\websoft\mysql-5.1

27_253667_e0f5b44a9881701

选择好了后,点击“ok”,切换到之前的操作界面,然后点击图片中的“next”,mysql 就开始安装了

27_253667_548bd032ce7b857

出现上面的图片,表示安装好了。点击“finish”就开始配置mysql了,看图操作

27_253667_01555a7d2a33528

27_253667_e46cbb78aef4f9d

27_253667_f45a88da533b517

27_253667_8ea78b95f0b243e

27_253667_9382344253ad519

27_253667_0d980b194c8cc9c

27_253667_751c599a291fc62

27_253667_8db6f68725ee12f

这个操作画面的时候,输入的就是mysql root 帐号的密码,建议你输入完成后随手记下免得忘记

27_253667_68f97f0d29d1e28

27_253667_e6cc415771fb8b3

出现上面的操作画面,表示配置环境了,这样 mysql 就安装好了.

说明:

1.   修改mysql数据库文件路径

2.   [mysql]修改mysql数据库文件路径之后,重启出错(1067)

[windows]在windows系统中配置php环境

很多人都说在linux系统配置php环境麻烦,需要输命令进行操作,从而选择在windows系统中来搭建php网站,所以需要来配置php环境。配置php环境步骤如下:

首先下载php环境包,建议使用阿里云的集成压缩包:

http://soft.phpwind.me/top/iis6/websoft.zip 这个软件包已经包含 php 5.2.17 mysql 5.1.63  zend  phpwind 8.7 phpmyadmin 3.5.2 省去大家到各个网站找包的时间。

下载完成后解压拷贝到d盘,目录结构如下图:

27_253667_081ab742ee64e96

然后进行安装php

如图剪切“libeay32.dll libmcrypt.dll libmysql.dll ssleay32.dll”这些dll文件到“c:\windows\system32”目录下

剪切图片中的“php”到c:\windows目录下

27_253667_a5298f774835873

右击 “我的电脑” 选择“管理”

27_253667_7218269fed0ec7b

找到Internet 信息服务器(iis)点击“web服务扩展”在一般空白区域右击,如图

27_253667_3292f286a332238

选择“添加一个新的web服务扩展”出现下图

27_253667_5b8880600f2ff13

扩展名输入   php   然后点击“添加”如图

27_253667_925f1c74542fbd0

出现下图

27_253667_b6bb3278c504e18

点击“浏览”选择 d:\websoft\php-5.2.17\php5isapi.dll

27_253667_24d8e8c4a9fcfed

如图点击“确定”后出现下图

27_253667_f8d48d99693a276

选中图片中“设置扩展状态为允许” 点击“确定”出现下图

27_253667_c7b763ad06058c8

在web服务扩展就多了php,如上图

27_253667_1a70c626da897a2

右击“网站”,选择“属性”, 出现下面的截图

27_253667_34a8e14162b8fa1

点击图片中的“主目录”出现下图

27_253667_8093b9172afd8a6

点击图片中的“配置” 出现下图

27_253667_4b4b1a7ca2c0c7a

点击“添加”出现下图

27_253667_351249bf6206f7a

点击图片中的“浏览”选择“d:\websoft\php-5.2.17\php5isapi.dll”再点击“确定”,出现下图

27_253667_f70394e32bf75c1

在扩展名处输入   .php    ,然后点击“确定”,出现下图

27_253667_0fb8bab07bbc78c

在应用程序扩展就出现了刚才添加的.php, 点击图片中的“确定”,出现下图

27_253667_07bb240da426bef

点击“文档”,出现下图

27_253667_06c3d88686844ff

点击“添加”,出现下图,后输入  index.php 然后点击“确定”

27_253667_e8158668999c761

然后再点击“添加”, 添加index.html,添加完成后,点击“应用”出现如下图片

27_253667_88057fa1eea4175

点击“全选”, 然后再点击“确定”然后出现下图

27_253667_b98258f46827c13

点“应用” 然后再点击“确定”,这样php 就配置好了。

说明:

如果是从php官网下载的php环境包,请查看【php】IIS下安装PHP程序运行调试环境详解

[php]使用magic_quotes_gpc来实现POST/GET提交Mysql数据自动转义

在处理mysql和GET、POST的数据时,常常要对数据的引号进行转义操作。

PHP中有三个设置可以实现自动对’(单引号),”(双引号),\(反斜线)和 NULL 字符转转。

PHP称之为魔术引号,这三项设置分别是

magic_quotes_gpc影响到 HTTP 请求数据(GET,POST 和 COOKIE)。不能在运行时改变。在 PHP 中默认值为 on。

这个开启时,通过GET,POST,COOKIE传递的数据会自动被转义。

例如:

test.php?id=abc'de"f
echo $_GET['id']; 
#  会得到 abc\'de\"f

magic_quotes_gpc=On; 这个开启了,对写入数据库是没有影响的,比如 上面的$_GET[‘id’]  写到数据库里面,依然是 abc’de”f ,
相反,如果magic_quotes_gpc=Off; 那么字符中要带有引号(不管单引号还是双引号) ,直接写入mysql都会直接变成空白
但是,如果你将它写入文档,而非mysql。那么它将是 abc\’de\”f

magic_quotes_runtime
如果打开的话,大部份从外部来源取得数据并返回的函数,包括从数据库和文本文件,所返回的数据都会被反斜线转义。该选项可在运行的时改变,在 PHP 中的默认值为 off。

magic_quotes_sybase
如果打开的话,将会使用单引号对单引号进行转义而非反斜线。此选项会完全覆盖 magic_quotes_gpc。如果同时打开两个选项的话,单引号将会被转义成 ”。而双引号、反斜线 和 NULL 字符将不会进行转义。

提交的数据内容如下:

<img alt=”" width=”400″ height=”300″ src=”/Upfiles/201105/images/1306657040.jpg” />

提交到数据库,然后从数据库中调出能正常显示该图片信息?

实现方法:

方法一: 直接修改php.ini文件,把magic_quotes_gpc的值改为on,然后再重启apache即可。

20140404194612

方法二: 先对提交的数据用stripslashes函数进行转义,然后提交到数据库,再从数据库调出该数据的数据,用stripslashes过滤掉转义字符即可。

总结如下:

1. 对于magic_quotes_gpc=on的情况,

我们可以不对输入和输出数据库的字符串数据作addslashes()和stripslashes()的操作,数据也会正常显示。

如果此时你对输入的数据作了addslashes()处理,那么在输出的时候就必须使用stripslashes()去掉多余的反斜杠。

2. 对于magic_quotes_gpc=off 的情况

必须使用addslashes()对输入数据进行处理,但并不需要使用stripslashes()格式化输出因为addslashes()并未将反斜杠一起写入数据库,只是帮助mysql完成了sql语句的执行。