2011-02-24 56 views
-1

我想通过https从另一个网站上获取一个网站的信息到一个php脚本。我在www.php.net上读到了fopen()函数的页面,该函数支持HTTPS协议。这是一个安全的SSL数据传输吗?或不?

但它真的是安全的SSL传输?在网络上是否显示GET变量“私有”值?我安全地获得$内容价值吗?

$filename = 'https://www.somesite.com/page.php?private=45456762154'; 

$handle = fopen($filename , 'r'); 

$contents = stream_get_contents($handle); 

fclose($handle); 
+0

谷歌这是'ssl足够安全??' – diEcho 2011-02-24 12:04:30

回答

0

您可以使用工具(如Wireshark)进行检查。该工具将拦截网络流量并告诉您它正在传输哪个协议,并允许您检查数据包内容。如果无法理解,则为SSL :-)

另一方面,如果您使用的是浏览器(您不是),则可以使用类似的工具Fiddler来检查浏览器正在查看的HTTP流量。

+0

我已经尝试过Wireshark,但它有很多动态信息在屏幕上,我感到困惑,并决定要求在Stackoverflow。我读过某处,在某个论坛的一些评论中,在SSL-https传输期间,GET变量不可见,与POST相同,只有域名可见,但变量不可见。但是我找不到这种信息的具体可靠来源,更不用说使用SSL的fopen()PHP函数了。 – 2011-02-26 07:03:35

+0

根据我的经验,只有请求的域名在网络上可见,其他所有内容都被加密。 fopen()应该像通过浏览器的请求一样操作(因为它们都是相同的协议,线路上的流量应该是相同的),所以除域之外的所有内容都应该被加密。所以你应该没问题,但如果你真的想检查它,那么Wireshark会让你(尽管这不是那么友好,我同意)。 – Gnat 2011-02-26 11:27:02