Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Web and socks proxy [feature request] #15

Open
tak3r opened this issue Feb 23, 2016 · 2 comments
Open

Web and socks proxy [feature request] #15

tak3r opened this issue Feb 23, 2016 · 2 comments
Labels

Comments

@tak3r
Copy link

tak3r commented Feb 23, 2016

I'm just wondering whether http(s) and socks proxy are in the roadmap too?

@trowski
Copy link
Contributor

trowski commented Feb 24, 2016

https is already implemented on the server and client. On the server a PEM file must be passed as the 'pem' option to Icicle\Http\Server\Server::listen() (see the options array on the create() method of Icicle\Socket\Server\ServeryFactory). You can enable SSL/TLS on socket connections using the Icicle\Socket\Socket::enableCrypto() method. If you are using Icicle\Http\Client\Client, this should be handled for you if you provide an https url. You can see this in action by changing http:// to https:// in the client.php example.

SOCKS requires connecting to an intermediate proxy server to actually send the HTTP request. You can implement this yourself by manually making the connection to the SOCKS server, then using this connection to send requests using Icicle\Http\Client\Requester. I didn't plan on adding a class to implement this since it is fairly straightforward to do yourself. However, contributions are always welcome if you do write something for SOCKS.

@tak3r
Copy link
Author

tak3r commented Feb 24, 2016

https is already implemented on the server and client. On the server a PEM file must be passed as the 'pem' option to Icicle\Http\Server\Server::listen() (see the options array on the create() method of Icicle\Socket\Server\ServeryFactory). You can enable SSL/TLS on socket connections using the Icicle\Socket\Socket::enableCrypto() method. If you are using Icicle\Http\Client\Client, this should be handled for you if you provide an https url. You can see this in action by changing http:// to https:// in the client.php example.

From my understanding, this is for requesting http(s) request directly. What happen if I want to send a http(s) request through a web proxy server?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants