月度归档:2013年11月

window/linux下开启PHP curl

window下安装php_curl扩展支持

1.找到php.ini

修改extension=php_curl.dll 把前面的分号去掉;用 echo phpinfo();查看php.ini的路径。

2.把php_curl.dll
libeay32.dll
ssleay32.dll  复制到 win/system32下,
重启php的服务

 

如果是64位的WIN系统,请把文件复制到win/SysWOW64/下,如果不复制到这里,是自己配置的环境将无法使用CURL

linux 中 php如何安装curl扩展

如果php已经在系统编译好,后来又需要添加新的扩展。一种方式就是重新完全编译php,另一种方式就是单独编译扩展库,以extension的形式扩展。下面以安装curl扩展为例:

1、下载curl安装包。(我的php是4.4.4的,下载最新的curl 7.16 不能使用,最后下载7.14的才可以,所以要注意一下版本问题)
./configure
make
php要求curl的目录要有include和lib目录,并且include下要有easy.h 和curl.h两个文件,lib下要有libcurl.a。经编译后include下的文件有了,但是lib目录下没有。原来生成到lib/.libs目 录下,所以要copy到lib目录
2、进入安装原php的源码目录,
cd ext
cd curl
phpize
./configure --with-curl=DIR
make
就会在PHPDIR/ext/curl/moudles/下生成curl.so的文件。

 

或者修改api\comm\utils.php (PHP SDK是这个)

function get_url_contents($url)
{
if (ini_get("allow_url_fopen") == "1")
return file_get_contents($url);
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_URL, $url);
$result =  curl_exec($ch);
curl_close($ch);
return $result;
}
替换为:
function get_url_contents($url)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
return $result;
}

隐藏服务端版本号APACHE+PHP

1.隐藏php版本号
隐藏方法:vim php.ini添加如下代码 expose_php = Off
2.隐藏nginx版本号
隐藏方法:vim nginx.conf 在http里加入sever_tokens= Off

3.隐藏apache版本号
隐藏方法:vim httpd.ini 添加如下代码
1. ServerTokens = ProductOnly
2. ServerSignature = Off
修改每个配置文件都要重启服务才可以生效。

伪装apache
编辑ap_release.h文件,修改“#define AP_SERVER_BASEPRODUCT \"Apache\"”为“#define AP_SERVER_BASEPRODUCT \"Microsoft-IIS/5.0\"”。
编辑os/unix/os.h文件,修改“#define PLATFORM \"Unix\"”为“#define PLATFORM \"Win32\"”。
修改完毕后,重新编译、安装Apache。

伪装nginx
cd /usr/local/src/nginx-xxx/src/core/
[root@server core]# cat nginx.h

/*
* Copyright (C) Igor Sysoev
/ #ifndef _NGINX_H_INCLUDED_ #define _NGINX_H_INCLUDED_ #define nginx_version 1000001 #define NGINX_VERSION "1.0.1" /修改一下版本/ #define NGINX_VER "nginx/" NGINX_VERSION /可以把nginx替换成其他的名字/ #define NGINX_VAR "NGINX"/可以把nginx替换成其他的名字/ #define NGX_OLDPID_EXT ".oldbin" #endif / _NGINX_H_INCLUDED_ */

修改完毕后,重新编译