1. 类库下载:
用于新浪微博开放平台的PHP Lib. 内含能直接使用的DEMO.
SAE上OAuth版本内置了,不用下载,参考http://blog.sae.sina.com.cn/?p=107*
Basic认证版本在这里下载 http://code.google.com/p/libweibo/downloads/list
新浪官方下载页面: http://open.t.sina.com.cn/wiki/index.php/SDK#PHP
新浪宣布2011.6.1全面停止 Basic Auth的支持,所以要请开发者注意这个问题了
2. 调用新浪微博接口必须是要申请一个应用的,申请应用成功之后会得到一个App key号和App Secret号,我们也需要通过这两个参数来请求授权
新浪官方地址:http://t.sina.com.cn/11051/3f4cXR5Tej
3. demo使用教程:
下载,然后解压,修改config.php中的App Key和App Secret
打开index.php,将13行最后一个url改成你网站对应的callback.php的url
上传到PHP空间即可
4. 开发完成后,再去新浪微博网站上提交申请即可
5. 我觉得这个第三方登录其实意义也不大,从新浪微博传过来的参数,没几样是我需要的,邮箱不肯给,有用的就给了个用户名的参数,但是用户名有什么用啊,我也不能用这个用户名直接给用户注册一个账号,因为万一有重复的用户名就出错了,所以还是需要用户自行选择是绑定已有的网站账号呢,还是根据这个第三方认证创建一个新账号。这些都做完以后,用户可以根据第三方认证自动登录。用户其实该填的还都得填,没一点方便,这个无非就是几个网站之间表面性的提高点耦合度,提高点点击量,无他。
6. 出现的问题
我在本机测试的时候,一切ok。传到服务器的时候出错了,点击第三方登录按钮时,打开的页面总是“找不到页面”。后来根据新浪的类库代码一步一步的找下去,发现原因了,他用到了curl模块,我的服务器恰好是不支持这个的。得,重新编译php吧,让他支持curl吧。教程如下
7. Linux下为PHP添加CURL扩展库的教程
本次编译只是单独编译php的扩展库,然后将编译好的php扩展库加到现在运行的php中,不对现在运行的php重新编译,所以对现在运行的php没有任何影响。
假如原先编译的php目录在/usr/local/php4目录下;apache在/usr/local/apache2目录下;php源代码在/usr/local/src/php-4.4.7目录下。如果实际目录与假定的目录不一致,则在下面的命令中做调整。
1. 找到当前运行的php版本的源代码目录,如 php-4.4.7。进入curl扩展库目录。
$cd /usr/local/src/php-4.4.7/ext/curl
2. 调用phpize程序生成编译配置文件。
$/usr/local/php4/bin/phpize
3. 编译扩展库,分别执行下面的configure和make命令。
$./configure -with-php-config=/usr/local/php4/bin/php-config
##configure这一步执行通过后,再执行make命令,如果configure执行不通过,则查找错误原因。
$make
##make成功执行后,生成的扩展库文件在当前目录的 modules 子目录下,
如 /usr/local/src/php-4.4.7/ext/curl/modules/curl.so
4. 配置php.ini文件
##将编译好的扩展库文件复制到apache2 modules目录下。
$cp /usr/local/src/php-4.4.7/ext/curl/modules/curl.so /usr/local/apache2/modules/.
##可以通过查看phpinfo信息来确定php.ini文件位置,然后编辑。
##在php.ini文件中找到设置扩展目录的位置,然后将扩展路径设置到apache2 modules目录下。
extension_dir = “/usr/local/apache2/modules/”
##在php.ini的添加扩展库位置,设置要添加的扩展库。
extension=curl.so
##以后如果还要添加别的扩展库的话,则只需先将php扩展库编译好,然后copy到apache2 modules目录下,
##然后再在这个位置,添加一行将编译后的扩展库文件名加上即可。
5. 重启apache,查看phpinfo信息,即可看到刚才添加进去的curl扩展库。