If your system is behind an HTTP proxy then additional configuration may be required to connect to the shinyapps.io service. The required configuration varies depending on what type of HTTP connection you are making to the server.
The default HTTP connection type is rcurl
however additional connection types curl
and internal
are also supported. The HTTP connection type is configured using the rsconnect.http global option - see ?rsconnect::rsconnectOptions
for more.
HTTP Proxy Environment Variable
The most straightforward way to specify a proxy for rcurl
and curl
connections is to set the http_proxy
environment variable. For example, you could add the following code to your .Rprofile:
Sys.setenv(http_proxy = "http://proxy.example.com")
Proxy settings can include a host-name, port, and username/password if necessary. The following are all valid values for the http_proxy
environment variable:
http://proxy.example.com/
http://proxy.example.com:1080/
http://username:password@proxy.example.com:1080/
Setting RCurl Proxy Options
The default HTTP connection type is rcurl
. If you need more configurability than affored by the http_proxy
environment variable you can specify RCurl proxy options explicity using RCurlOptions
. For example, you could add the following code to your .Rprofile:
options(RCurlOptions = list(proxy = "http://proxy.example.com")
You can set any underling curl option using this mechanism. To do this you translate curl options to lowercase and remove the CURL_
prefix (for example, CURLOPT_PROXYPORT
becomes proxyport
).
A list of available curl options can be found here: curl http proxy options.
Using Internet Explorer Proxy Settings
If you are running on Windows and have difficulty configuring proxy settings for rcurl
or curl
connections, it's possible to re-use your Internet Explorer proxy settings for connections to the server. To do this you set the http connection type to internal
as follows:
options(rsconnect.http = "internal")
The internal
connection type uses an insecure (non-encrypted) http connection to the server. If you require an encrypted https connection it's recommended that you use an rcurl
or curl
connection.
Comments