<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: ProxyData</title>
    <description>The latest articles on DEV Community by ProxyData (proxydata).</description>
    <link>https://dev.to/proxydata</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F14800%2F58b0eeb0-34fe-4c72-a170-85b879eefe34.png</url>
      <title>DEV Community: ProxyData</title>
      <link>https://dev.to/proxydata</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/proxydata"/>
    <language>en</language>
    <item>
      <title>HTTP proxy or HTTPS proxy? Check which connection uses TLS</title>
      <dc:creator>Alex</dc:creator>
      <pubDate>Sat, 10 Oct 2026 12:31:57 +0000</pubDate>
      <link>https://dev.to/proxydata/http-proxy-or-https-proxy-check-which-connection-uses-tls-16ol</link>
      <guid>https://dev.to/proxydata/http-proxy-or-https-proxy-check-which-connection-uses-tls-16ol</guid>
      <description>&lt;p&gt;An HTTPS page can load successfully while your proxy login travels without TLS protection. The website connection and the connection to the proxy have separate security properties.&lt;/p&gt;

&lt;p&gt;This distinction matters when you configure a client, read a provider's “HTTPS supported” label, or investigate a TLS error. Start with two questions: does the destination use HTTPS, and does the proxy endpoint itself accept TLS?&lt;/p&gt;

&lt;h2&gt;
  
  
  How HTTP and HTTPS traffic passes through a proxy
&lt;/h2&gt;

&lt;p&gt;For an ordinary HTTP website, your application sends the request to the proxy. The proxy contacts the website, retrieves the response and sends it back. It handles the request as HTTP, so it can read the requested page address, headers and any content sent with the request.&lt;/p&gt;

&lt;p&gt;For an HTTPS website, the application first asks the proxy to open a connection to the destination, such as &lt;code&gt;example.com:443&lt;/code&gt;. This request uses the HTTP method &lt;strong&gt;CONNECT&lt;/strong&gt;. After the proxy accepts it, the application establishes TLS with the website through the resulting tunnel. TLS is the encryption used by HTTPS.&lt;/p&gt;

&lt;p&gt;The proxy forwards the encrypted traffic in both directions. It does not need to decrypt the page to deliver it. The application checks the website's certificate, just as it would when connecting directly. CONNECT creates the tunnel; TLS protects the data sent through it.&lt;/p&gt;

&lt;p&gt;HTTP describes the connection protocol, not the source or allocation of the IP address. HTTP access can be offered with datacenter, ISP, residential or mobile addresses, and with fixed or rotating exits.&lt;/p&gt;

&lt;h2&gt;
  
  
  HTTPS websites and HTTPS proxy connections
&lt;/h2&gt;

&lt;p&gt;There are two different capabilities to distinguish when reading a proxy description or choosing a setting.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;HTTPS website support&lt;/strong&gt; means that the proxy can carry a connection to an HTTPS destination. An ordinary HTTP proxy can do this using CONNECT. Your application's conversation with the website is encrypted, but the initial request to the proxy is not.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;An HTTPS proxy connection&lt;/strong&gt; means that your application establishes TLS with the proxy itself. Requests to the proxy, including CONNECT and proxy authentication, travel inside that protected connection. When the destination is also HTTPS, its own TLS connection runs through the tunnel. The proxy removes the outer layer of encryption; the website's traffic inside remains encrypted.&lt;/p&gt;

&lt;p&gt;These capabilities are not interchangeable. A service that lets you open HTTPS websites does not necessarily accept TLS connections on its proxy port. To use an HTTPS proxy connection, both the proxy endpoint and your application must support it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fm8xbm05cnn5hpe4f3rdu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fm8xbm05cnn5hpe4f3rdu.png" alt="An HTTP proxy and an HTTPS proxy both forward encrypted HTTPS website data. The HTTPS proxy adds a separate TLS layer from the app to the proxy, protecting CONNECT and Basic proxy authentication on that connection." width="800" height="629"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;HTTPS protects the website content in both cases. TLS to an HTTPS proxy additionally protects the connection to the proxy, including CONNECT and Basic proxy authentication. Ordinary CONNECT forwarding with valid certificate checks is shown; HTTPS interception is excluded.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What the proxy can see
&lt;/h2&gt;

&lt;p&gt;The following comparison assumes normal forwarding without HTTPS interception, working certificate validation and no separate VPN or other encrypted tunnel. “Page content” includes the URL path and query parameters, request headers, cookies, submitted data and the response.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Connection to proxy&lt;/th&gt;
&lt;th&gt;Destination website&lt;/th&gt;
&lt;th&gt;Can the proxy read page content?&lt;/th&gt;
&lt;th&gt;Can someone observing the network between you and the proxy read page content?&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;HTTP&lt;/td&gt;
&lt;td&gt;HTTP&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;HTTP&lt;/td&gt;
&lt;td&gt;HTTPS&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;HTTPS&lt;/td&gt;
&lt;td&gt;HTTP&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;HTTPS&lt;/td&gt;
&lt;td&gt;HTTPS&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;An HTTPS proxy therefore adds useful protection on the way to the proxy, but it does not turn an HTTP destination into an HTTPS website. The proxy still reads that HTTP request and sends it onward without HTTPS protection.&lt;/p&gt;

&lt;p&gt;Even with HTTPS at both stages, the proxy operator sees the source IP of your connection, the destination requested in CONNECT, and traffic volume and timing. HTTPS hides the page contents from a forwarding proxy; it does not hide the fact that you used it. The website receives the connection from the proxy's exit IP, but can still recognise your account or cookies.&lt;/p&gt;

&lt;p&gt;Proxy credentials need separate attention. With &lt;strong&gt;Basic authentication over a plain HTTP proxy connection&lt;/strong&gt;, the proxy username and password are encoded, not encrypted. An observer on that connection can recover them even when the destination website uses HTTPS: proxy authentication happens outside the website's protected connection. TLS to the proxy protects this exchange and the CONNECT request. It does not make unrelated traffic, such as separate DNS requests, private.&lt;/p&gt;

&lt;p&gt;HTTPS inspection changes the arrangement. If your application trusts a certificate authority controlled by an inspecting proxy, that proxy can establish separate TLS connections and read the traffic between them. This is used in managed networks and debugging tools. Ordinary CONNECT forwarding does not require installing a proxy's root certificate; disabling certificate checks is not a routine fix for connection problems.&lt;/p&gt;

&lt;h2&gt;
  
  
  Entering the right proxy settings
&lt;/h2&gt;

&lt;p&gt;Use the proxy hostname or IP, port, protocol and authentication details supplied for the endpoint. &lt;strong&gt;The protocol in the proxy address describes how to connect to the proxy.&lt;/strong&gt; The protocol in the website address describes the destination.&lt;/p&gt;

&lt;p&gt;For example, this curl command requests an HTTPS page through a plain HTTP proxy:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;--proxy&lt;/span&gt; http://proxy.example:8080 https://example.com/
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;proxy.example&lt;/code&gt; and port &lt;code&gt;8080&lt;/code&gt; are placeholders to replace with your actual endpoint. The first &lt;code&gt;http://&lt;/code&gt; is intentional: curl connects to that proxy using HTTP, then uses CONNECT and TLS to reach the HTTPS website. Add the service's required authentication separately. In a graphical application, use its proxy username and password fields or the provider's permitted source-IP setting, as applicable.&lt;/p&gt;

&lt;p&gt;Use &lt;code&gt;https://&lt;/code&gt; in the proxy address only for an endpoint that accepts TLS. Changing the prefix does not enable encryption on an HTTP-only endpoint. Copy the issued hostname when the provider specifies one for HTTPS access: substituting an IP address can cause a certificate name mismatch.&lt;/p&gt;

&lt;p&gt;Interface labels can also mislead. A field called “HTTPS proxy” or “Secure proxy” may mean “the proxy to use for HTTPS websites.” It does not, by itself, prove that the application will encrypt its connection to the proxy. The endpoint scheme and the application's support determine that. Ports such as &lt;code&gt;8080&lt;/code&gt; or &lt;code&gt;443&lt;/code&gt; are conventions, not proof of a protocol.&lt;/p&gt;

&lt;h2&gt;
  
  
  Which traffic this setup covers
&lt;/h2&gt;

&lt;p&gt;A browser or HTTP client's proxy setting covers the requests that application sends through it. It does not automatically route other programs or the whole computer through the proxy. Bypass rules can also send selected destinations directly. When checking the result, use the same application and configuration that will run the actual task.&lt;/p&gt;

&lt;p&gt;An HTTP/1.1 CONNECT tunnel can carry an HTTPS session using HTTP/2 between the application and the website. The HTTP version used to talk to the proxy does not set the version inside that tunnel. HTTP/2 support on an HTTPS proxy's own connection is a separate capability.&lt;/p&gt;

&lt;p&gt;CONNECT opens a TCP tunnel. It can carry protocols other than web traffic when the application and proxy allow it, but the provider can restrict destination ports. Ordinary CONNECT does not carry UDP. UDP proxying through HTTP requires a separate mechanism, such as CONNECT-UDP, supported at both ends. An “HTTPS supported” label does not establish UDP or HTTP/3 support.&lt;/p&gt;

&lt;h2&gt;
  
  
  When a connection fails
&lt;/h2&gt;

&lt;p&gt;Identify which stage failed before replacing the proxy or changing protocols. A refusal from the proxy and a refusal from the website call for different fixes.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Symptom&lt;/th&gt;
&lt;th&gt;What to check first&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;407 Proxy Authentication Required&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Proxy credentials and the authentication method accepted by the endpoint. This is a proxy login problem, not the website's login.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;HTTP pages load, but HTTPS connections fail&lt;/td&gt;
&lt;td&gt;CONNECT support, the permitted destination port, and which proxy setting the application uses for HTTPS requests.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;A TLS error appears immediately after changing the proxy address to &lt;code&gt;https://&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Whether that proxy port actually accepts TLS, then the proxy's certificate and hostname.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;A certificate error appears after the tunnel opens&lt;/td&gt;
&lt;td&gt;The website certificate and any HTTPS inspection affecting the connection. Keep certificate validation enabled.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;The website returns a login page, CAPTCHA or access denial after TLS succeeds&lt;/td&gt;
&lt;td&gt;The request has reached the destination. Review the site's response, account state and request behaviour; successful proxy transport does not guarantee access.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;For browsing, scraping and API requests, HTTP proxy access with CONNECT supplies the route to HTTPS destinations. Choose a TLS-protected HTTPS proxy endpoint when you also need to protect the connection to the proxy, including its authentication and tunnel requests. That additional protection is the practical reason to distinguish the two.&lt;/p&gt;

&lt;p&gt;Originally published in &lt;a href="https://proxydata.io/knowledge/http-and-https-proxies" rel="noopener noreferrer"&gt;ProxyData’s guide to HTTP and HTTPS proxies&lt;/a&gt;. This adaptation was prepared with AI assistance.&lt;/p&gt;

</description>
      <category>proxy</category>
      <category>networking</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Same proxy IP, lost login: which session expired?</title>
      <dc:creator>Alex</dc:creator>
      <pubDate>Fri, 09 Oct 2026 07:23:44 +0000</pubDate>
      <link>https://dev.to/proxydata/same-proxy-ip-lost-login-which-session-expired-2o0n</link>
      <guid>https://dev.to/proxydata/same-proxy-ip-lost-login-which-session-expired-2o0n</guid>
      <description>&lt;p&gt;A browser automation job can keep the same proxy exit IP and still lose its login. Before changing the proxy settings, separate two kinds of state: the exit assignment managed by the proxy service and the website session maintained by your client.&lt;/p&gt;

&lt;h2&gt;
  
  
  Two sessions with different jobs
&lt;/h2&gt;

&lt;p&gt;A sticky proxy session asks the provider to keep an exit assignment for a task. A common implementation uses a session label in the proxy settings, although some services use a sticky port or a dashboard option. Use the format documented for that product; adding a parameter to the destination website URL does not configure the proxy.&lt;/p&gt;

&lt;p&gt;The website session usually depends on cookies or authentication tokens. Keeping an IP does not store those values, send them on subsequent requests, or extend the website login. A client object named “session” may retain cookies and reuse connections, but its name does not enable sticky mode at the proxy provider.&lt;/p&gt;

&lt;p&gt;For independent users, keep client state isolated as well as choosing the intended proxy assignment. Separate browser profiles or separate cookie stores solve a different problem from separate proxy session labels.&lt;/p&gt;

&lt;h2&gt;
  
  
  Diagnose the symptom before changing the timer
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;What you observe&lt;/th&gt;
&lt;th&gt;What to investigate&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;The exit IP stays the same, but the website asks you to sign in again&lt;/td&gt;
&lt;td&gt;Whether the client retained and sent the required cookies or tokens, and whether the website session expired.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;The session label stays the same, but the exit changes after a pause&lt;/td&gt;
&lt;td&gt;The provider’s idle timeout, maximum lifetime, exit availability, and whether routing settings changed.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Repeated requests show one IP on a single TCP connection&lt;/td&gt;
&lt;td&gt;Whether the same assignment also survives new proxy connections. One reused connection alone does not establish sticky behavior.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;These observations narrow the investigation; they do not prove a single cause. A valid website session may survive an IP change if the website permits it. Conversely, a stable IP cannot prevent logout caused by an expired session or missing cookie.&lt;/p&gt;

&lt;h2&gt;
  
  
  Test both kinds of continuity
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Open several new proxy connections using the same supported session label and routing settings. Record the exit address and time.&lt;/li&gt;
&lt;li&gt;Reproduce the pauses in the real job. Check both the provider’s maximum lifetime and its idle timeout.&lt;/li&gt;
&lt;li&gt;Run the complete application workflow with its actual cookie or token storage. Confirm that the required state survives between steps.&lt;/li&gt;
&lt;li&gt;If an interruption happens after a request that changes data, check whether the original action completed before repeating it.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Changing the proxy TTL cannot restore a missing cookie or an expired website login. Treat the proxy assignment and the website session as separate parts of the test.&lt;/p&gt;

&lt;p&gt;Based on &lt;a href="https://proxydata.io/knowledge/sticky-sessions" rel="noopener noreferrer"&gt;ProxyData’s Sticky Sessions guide&lt;/a&gt;. This technical note was prepared with AI assistance.&lt;/p&gt;

</description>
      <category>proxy</category>
      <category>networking</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
