#Java客户端和PHP服务器端常用和非常用的参数列表
本wiki页作用
主要解释各个参数的具体作用。
参数具体作用详细解释
Java客户端
- serverurl:服务器端php的可访问网址。
- secretkey:加密用的密钥,服务器端和客户端需要一致,现在版本加密使用简单异或操作,所以密钥长度建议超过单个数据包4096字节长度。
- prefix:为了避免服务器端由于某些情况(比如强制插入广告、php的warning提示等)返回非php程序返回的数据,所以加入了prefix和postfix,每次php返回数据时都在数据两端加上prefix和postfix,客户端收到后只使用prefix和postfix之间的数据。服务器端和客户端的prefix和postfix要求一致。
- postfix:为了避免服务器端由于某些情况(比如强制插入广告、php的warning提示等)返回非php程序返回的数据,所以加入了prefix和postfix,每次php返回数据时都在数据两端加上prefix和postfix,客户端收到后只使用prefix和postfix之间的数据。服务器端和客户端的prefix和postfix要求一致。
- localport:Java客户端侦听的端口,此端口即是socks5代理端口。
- localhost:Java客户端绑定的IP,默认为127.0.0.1,只能本机使用。如果需要非本机使用,可以改成0.0.0.0。
Polipo
- polipohost:Polipo绑定的IP,默认为127.0.0.1,只能本机使用。如果需要非本机使用,可以改成0.0.0.0。
- polipoport:Polipo侦听的端口,此端口即是http和https代理端口。
PHP服务器端
- dbhost:MySQL数据库的地址。
- dbport:MySQL数据库的端口,默认为3306。
- dbuser:MySQL数据库的用户名。
- dbpass:MySQL数据库的口令。
- dbname:MySQL数据库的库名。
- secretkey:加密用的密钥,服务器端和客户端需要一致,现在版本加密使用简单异或操作,所以密钥长度建议超过单个数据包4096字节长度。
- debuginfo:为True时显示调试信息,打印log;为False时不显示调试信息,不打印log。调试信息现阶段包括首次使用浏览器访问此php时创建表是否成功,如果debuginfo为False则无论创建表是否成功都不会显示,防止防火墙侦测到特定的信息进而进行屏蔽,如需知道数据库表是否创建成功可以自己连接到MySQL数据库服务器上查看是否有此代理创建的3个表。不打印log则不会生成log文件,这样也就无法通过人肉探测到此代理的存在。人肉探测此代理的方法可以是尝试下载phpsocks5_log.log文件,如果能下载则有此代理,如果无此文件则无此代理。所以不生成log文件将无法通过此手段探测到此代理。不打印log还能节省服务器资源。
- prefix:为了避免服务器端由于某些情况(比如强制插入广告、php的warning提示等)返回非php程序返回的数据,所以加入了prefix和postfix,每次php返回数据时都在数据两端加上prefix和postfix,客户端收到后只使用prefix和postfix之间的数据。服务器端和客户端的prefix和postfix要求一致。
- postfix:为了避免服务器端由于某些情况(比如强制插入广告、php的warning提示等)返回非php程序返回的数据,所以加入了prefix和postfix,每次php返回数据时都在数据两端加上prefix和postfix,客户端收到后只使用prefix和postfix之间的数据。服务器端和客户端的prefix和postfix要求一致。
- dbprefix:作用有2:1、服务器端php程序建MySQL数据表和操作数据表时的表名前缀,默认为“phpsocks5_”,所以建的3个表和使用的时候都是“phpsocks5_”开头的。可以更改此前缀,更改后需要重新使用浏览器访问服务器端的php网址建表。2、此参数现在还用作log文件的前缀,更改此参数也会使log文件的前缀改变。
- invstep:由于socks5代理协议为数据包转发协议,所以php服务器端需要轮询(php的限制无法做到同时等待发送数据的到达和接收数据)数据包的发送和接收。所以需要控制轮询时间,不能太短也不能太长:太短服务器负担太重,太长客户端延迟太大。invstep控制在本次轮询时如果无数据发送和接收,那么下次轮询间隔时间增加多少;invmax控制轮询时间最大间隔多少,如果当前轮询的时间间隔超过了invmax,会把当前轮询的时间间隔设为invmax。
- invmax:由于socks5代理协议为数据包转发协议,所以php服务器端需要轮询(php的限制无法做到同时等待发送数据的到达和接收数据)数据包的发送和接收。所以需要控制轮询时间,不能太短也不能太长:太短服务器负担太重,太长客户端延迟太大。invstep控制在本次轮询时如果无数据发送和接收,那么下次轮询间隔时间增加多少;invmax控制轮询时间最大间隔多少,如果当前轮询的时间间隔超过了invmax,会把当前轮询的时间间隔设为invmax。
- version:协议版本号,请不要修改此参数。如果客户端和服务器端通讯的协议有变,那么会改变版本号,这样老客户端连接新服务器时将得到版本错误的提示。客户端的版本号直接写在了Java程序中,不可在客户端的配置文件中修改。服务器端和客户端的版本号一致才能正常使用phpsocks5。
关于(php的限制无法做到同时等待发送数据的到达和接收数据),是否可以将他们分开成两部分,这样就可以同时执行吧?我不懂PHP,只是一个想法
其实在自己的主机是可以用stream_select函数来做到的。 不过基本上所有的免费空间都禁用了这个函数。
我想知道mysql里面的内容都是什么.
Great
PHP Training in Chennai Online PHP Training Online PHP Training From India
Great
Online Drupal Training Online Drupal Training From India
Great
Online Joomla Training Online Joomla Training From India
Great
Online Wordpress Training Online Wordpress Training From India