我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

« 1 2» Pages: ( 1/2 total )
本页主题: [原创]rx上网之php版本 显示签名 | 打印 | 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题

零点坐标



性别: 帅哥 状态: 该用户目前不在线
头衔: He doesn't have a soul
等级: 荣誉会员
发贴: 1199
威望: 0
浮云: 407
在线等级:
注册时间: 2005-05-04
最后登陆: 2014-12-22

5come5帮你背单词 [ part /pa:t/ n. 部分,局部,一方,作用,零件;vt. 分,使分开,断绝;vi. 分开,断裂断绝关系 ]


[原创]rx上网之php版本

完全盗版u0u0同志的,只不过通过php实现形式体现出来而已。
主要是因为u0u0的perl脚本要安装lwp,但我的debian没带。
php可以象perl一样在控制台下运行,也可以作为网页运行,
现将不成型代码发布出来,今天晚上用它成功访问外网……

Copy code
<?php

function posttohost($url, $data) {
    $url = parse_url($url);

    if (!$url) return "couldn't parse url";

    if (!isset($url['port'])) { $url['port'] = ""; }

    if (!isset($url['query'])) { $url['query'] = ""; }

    $encoded = "";

    while (list($k,$v) = each($data)) {
        $encoded .= ($encoded ? "&" : "");
        $encoded .= rawurlencode($k)."=".rawurlencode($v);
    }

    $fp = fsockopen($url['host'], $url['port'] ? $url['port'] : 80);

    if (!$fp) return "Failed to open socket to $url[host]";
    fputs($fp, sprintf("POST %s%s%s HTTP/1.0\n", $url['path'], $url['query'] ? "?" : "", $url['query']));
#     fputs($fp, "Host: $url[host]\n");
    fputs($fp, "User-Agent: Mozilla/4.0 (compatible; MSIE5.0; Windows NT 5.0)\n");
    fputs($fp, "Content-type: application/x-www-form-urlencoded\n");
    fputs($fp, "Accept: text/html\n");
    fputs($fp, "Content-length: " . strlen($encoded) . "\n");
    fputs($fp, "Connection: close\n\n");
    fputs($fp, "$encoded\n");

    $line = fgets($fp,1024);
    if (!eregi("^HTTP/1\.. 200", $line)) return;

    $results = ""; $inheader = 1;
    while(!feof($fp)) {
        $line = fgets($fp,1024);
        if ($inheader && ($line == "\n" || $line == "\r\n")) {
              $inheader = 0;
        }
        elseif (!$inheader) {
              $results .= $line;
        }
    }
    fclose($fp);

    return $results;
}


function gettohost($url) {
    $url = parse_url($url);

    if (!$url) return "couldn't parse url";

    if (!isset($url['port'])) { $url['port'] = ""; }

    if (!isset($url['query'])) { $url['query'] = ""; }

    $fp = fsockopen($url['host'], $url['port'] ? $url['port'] : 80);

    if (!$fp) return "Failed to open socket to $url[host]";
    fputs($fp, sprintf("GET %s%s%s HTTP/1.0\n", $url['path'], $url['query'] ? "?" : "", $url['query']));
#     fputs($fp, "Host: $url[host]\n");
    fputs($fp, "User-Agent: Mozilla/4.0 (compatible; MSIE5.0; Windows NT 5.0)\n");
    fputs($fp, "Content-type: application/x-www-form-urlencoded\n");
    fputs($fp, "Accept: text/html\n");
#     fputs($fp, "Content-length: " . strlen($encoded) . "\n");
    fputs($fp, "Connection: close\n\n");

    $line = fgets($fp,1024);
    if (!eregi("^HTTP/1\.. 200", $line)) return;

    $results = ""; $inheader = 1;
    while(!feof($fp)) {
        $line = fgets($fp,1024);
        if ($inheader && ($line == "\n" || $line == "\r\n")) {
              $inheader = 0;
        }
        elseif (!$inheader) {
              $results .= $line;
        }
    }
    fclose($fp);

    return $results;
}







$id               = "999999999";
$password     = "1234";
$ip               = "172.24.5.28";
$url         = "[url]http://172.31.130.251/servlet/scpservlet.UserDataReqLoginServlet[/url]";
#$url         = "[url]http://localhost/test2.php?id=1[/url]";

$data =     array(
    'id'               =>     $id,    
    'inputpassword' =>     '',
    'servicetype'     =>     '201+',
    'ip'               =>     $ip,
    'password'         =>     $password,
    'languagetype'     =>     '0',
    'operatingSystem'     =>     '1',
    'httpIp'         =>     '211.95.166.57',
    'RadiusVision'     =>     '1',
    'Domain'         =>     'uestc'
    );

$results = posttohost($url, $data);
echo $results;
$url="[url]http://172.31.130.251/ClientProcess.jspMsgType=100&ISNNO=1000&LocalIP=$ip&UserName=$id&olduserip=$ip&httpIp=211.95.166.57&isPNP=False[/url]";
$results = gettohost($url);
echo $results;


?>



[ 此贴被u0u0在2005-06-17 14:54重新编辑 ]
本帖最近评分记录:
  • 财富:100 (by u0u0) | 理由: 不错。
  • 顶端 Posted: 2005-06-13 21:19 | [楼 主]
    u0u0



    资源小王子奖
    性别: 帅哥 状态: 该用户目前不在线
    头衔: 韩剧主力(曾经),FreeBSD fans
    等级: 荣誉会员
    发贴: 4710
    威望: 6
    浮云: 578
    在线等级:
    注册时间: 2003-11-22
    最后登陆: 2011-01-13

    5come5帮你背单词 [ census /'sensəs/ n. 人口普查 ]


    现在差的就是异常处理了,不过在不知道服务器断源码或客户断源码的情况下,靠猜测很难实现。
    顶端 Posted: 2005-06-13 21:37 | [1 楼]
    narsil





    性别: 帅哥 状态: 该用户目前不在线
    等级: 荣誉会员
    发贴: 2286
    威望: 1
    浮云: 456
    在线等级:
    注册时间: 2004-06-21
    最后登陆: 2008-06-09

    5come5帮你背单词 [ insomnia /in'samniə/ n. 失眠,失眠症 ]


    不过个人感觉还是PERL的方式好
    毕竟让系统做到支持PHP比让他支持PERL要复杂一些
    越复杂,就越容易出错。。。。
    顶端 Posted: 2005-06-13 21:39 | [2 楼]
    u0u0



    资源小王子奖
    性别: 帅哥 状态: 该用户目前不在线
    头衔: 韩剧主力(曾经),FreeBSD fans
    等级: 荣誉会员
    发贴: 4710
    威望: 6
    浮云: 578
    在线等级:
    注册时间: 2003-11-22
    最后登陆: 2011-01-13

    5come5帮你背单词 [ nationality /næə'næliti/ n. 国籍,民族 ]


    php在控制台下运行我没弄过,主要是php太多用于[屏蔽]页。
    顶端 Posted: 2005-06-13 21:42 | [3 楼]
    零点坐标



    性别: 帅哥 状态: 该用户目前不在线
    头衔: He doesn't have a soul
    等级: 荣誉会员
    发贴: 1199
    威望: 0
    浮云: 407
    在线等级:
    注册时间: 2005-05-04
    最后登陆: 2014-12-22

    5come5帮你背单词 [ asia /'eiə/ n. 亚洲 ]


    主要是lt上了外网以后就不能访问内网,不然可以考虑把php登陆客户端放在服务器上,不过这样的话会保持一个窗口不关,不断刷新,和那个html的上网客户端又差不多了。
    我只是玩玩而已,unix下肯定用perl的比用php的多啊,几乎perl是必备,连装vi都要perl.
    只是恰巧遇到没装perl的lwp而装了php而已……
    顶端 Posted: 2005-06-13 22:50 | [4 楼]
    江南长空



    性别: 保密 状态: 该用户目前不在线
    等级: 品行端正
    发贴: 467
    威望: 0
    浮云: 1437
    在线等级:
    注册时间: 2005-04-10
    最后登陆: 2005-06-28

    5come5帮你背单词 [ outlet /'aut-let/ n. 出口,出路,通风口 ]


    我还真没用php在控制台下运行
    FT
    可不可以用php来写shell啊
    顶端 Posted: 2005-06-13 23:13 | [5 楼]
    零点坐标



    性别: 帅哥 状态: 该用户目前不在线
    头衔: He doesn't have a soul
    等级: 荣誉会员
    发贴: 1199
    威望: 0
    浮云: 407
    在线等级:
    注册时间: 2005-05-04
    最后登陆: 2014-12-22

    5come5帮你背单词 [ payment /'peimənt/ n. 支付,支付的款项 ]


    php本来就可以写shell脚本,perl能做的,php几乎都能做,php也是一种很好的脚本语言。
    注意安装php为cgi方式就可以了。
    测试方法:
    编写test.php:
    #!/usr/bin/php -q(q参数可以避免输出html标记)
    <?="hello,world!"?>
    然后在控制台执行:
    $./test.php
    呵呵,很多人还不知道php可以当shell脚本……
    顶端 Posted: 2005-06-14 15:45 | [6 楼]
    rob



    性别: 保密 状态: 该用户目前不在线
    头衔: 美麗人生
    等级: 人见人爱
    家族: 梦魇图腾
    发贴: 3610
    威望: 0
    浮云: 1262
    在线等级:
    注册时间: 2004-11-10
    最后登陆: 2011-01-23

    5come5帮你背单词 [ devise /di'vaiz/ vt. 设计,发明 ]


    o?
    在win下有没有这样的应用啊?
    顶端 Posted: 2005-06-14 19:03 | [7 楼]
    goldnuts



    性别: 帅哥 状态: 该用户目前不在线
    头衔: 传说中的秋蝈
    等级: 荣誉会员
    家族: 梦魇图腾
    发贴: 8837
    威望: 1
    浮云: 431
    在线等级:
    注册时间: 2004-04-02
    最后登陆: 2009-04-10

    5come5帮你背单词 [ milestone /'mailstəun/ n. 里程碑 ]


    Quote:
    下面是引用零点坐标于2005-06-14 15:45发表的:
    php本来就可以写shell脚本,perl能做的,php几乎都能做,php也是一种很好的脚本语言。
    注意安装php为cgi方式就可以了。
    测试方法:
    编写test.php:
    #!/usr/bin/php -q(q参数可以避免输出html标记)
    .......

    我晓得了哈。贱人
    本帖最近评分记录:
  • 财富:-50 (by u0u0) | 理由: 请不要在这里用不文明语言。
  • 顶端 Posted: 2005-06-15 13:59 | [8 楼]
    零点坐标



    性别: 帅哥 状态: 该用户目前不在线
    头衔: He doesn't have a soul
    等级: 荣誉会员
    发贴: 1199
    威望: 0
    浮云: 407
    在线等级:
    注册时间: 2005-05-04
    最后登陆: 2014-12-22

    5come5帮你背单词 [ child /taild/ n. (pl.children)儿童,孩子 ]


    Quote:
    下面是引用rob于2005-06-14 19:03发表的:
    o?
    在win下有没有这样的应用啊?

    win下面一样可以,不过最好把php.exe所在目录添加到path里面,这样在哪里都可以运行php了。
    顶端 Posted: 2005-06-15 15:00 | [9 楼]
    owen



    贴图大师奖 社区建设奖
    性别: 帅哥 状态: 该用户目前不在线
    头衔: missing days in RX
    等级: 资政组
    发贴: 9190
    威望: 5
    浮云: 491
    在线等级:
    注册时间: 2003-10-09
    最后登陆: 2010-03-15

    5come5帮你背单词 [ superior /sju:'piəriə/ a. (职位等)较高的,上级的,较好的,优良的,高傲的;n. 上司,长官 ]


    关键是
    fputs($fp, "User-Agent: Mozilla/4.0 (compatible; MSIE5.0; Windows NT 5.0)\n");


    php can do many things
    顶端 Posted: 2005-06-16 17:42 | [10 楼]
    零点坐标



    性别: 帅哥 状态: 该用户目前不在线
    头衔: He doesn't have a soul
    等级: 荣誉会员
    发贴: 1199
    威望: 0
    浮云: 407
    在线等级:
    注册时间: 2005-05-04
    最后登陆: 2014-12-22

    5come5帮你背单词 [ winner /'winə/ n. 获胜者,成功者,优胜者 ]


    Quote:
    下面是引用owen于2005-06-16 17:42发表的:
    关键是
    fputs($fp, "User-Agent: Mozilla/4.0 (compatible; MSIE5.0; Windows NT 5.0)n");


    实验证明这不是关键的东西。lt不是靠这个判断浏览器的。
    顶端 Posted: 2005-06-17 11:31 | [11 楼]
    rob



    性别: 保密 状态: 该用户目前不在线
    头衔: 美麗人生
    等级: 人见人爱
    家族: 梦魇图腾
    发贴: 3610
    威望: 0
    浮云: 1262
    在线等级:
    注册时间: 2004-11-10
    最后登陆: 2011-01-23

    5come5帮你背单词 [ deaf /def/ a. 聋的,不愿听的 ]


    对了你这个程序在win下能用不?
    我试试不行啊
    顶端 Posted: 2005-06-17 11:34 | [12 楼]
    u0u0



    资源小王子奖
    性别: 帅哥 状态: 该用户目前不在线
    头衔: 韩剧主力(曾经),FreeBSD fans
    等级: 荣誉会员
    发贴: 4710
    威望: 6
    浮云: 578
    在线等级:
    注册时间: 2003-11-22
    最后登陆: 2011-01-13

    5come5帮你背单词 [ complaint /kəm'pleint/ n. 抱怨,诉苦,发牢骚 ]


    似乎现在很流行这种用http验证上网的方式,外网也有不少研究这方面的文章。
    顶端 Posted: 2005-06-17 11:58 | [13 楼]
    零点坐标



    性别: 帅哥 状态: 该用户目前不在线
    头衔: He doesn't have a soul
    等级: 荣誉会员
    发贴: 1199
    威望: 0
    浮云: 407
    在线等级:
    注册时间: 2005-05-04
    最后登陆: 2014-12-22

    5come5帮你背单词 [ hip /hip/ n. 臀部 ]


    Quote:
    下面是引用rob于2005-06-17 11:34发表的:
    对了你这个程序在win下能用不?
    我试试不行啊

    完全可以啊!我试过的!
    顶端 Posted: 2005-06-17 12:41 | [14 楼]
    « 1 2» Pages: ( 1/2 total )
    我来我网·5come5 Forum » Linux专区

    Total 0.021102(s) query 5, Time now is:05-05 04:27, Gzip enabled
    Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号