Title: The dreaded REST API and loopback errors
Last modified: August 25, 2021

---

# The dreaded REST API and loopback errors

 *  [txantimedia](https://wordpress.org/support/users/txantimedia/)
 * (@txantimedia)
 * [4 years, 8 months ago](https://wordpress.org/support/topic/the-dreaded-rest-api-and-loopback-errors/)
 * I’ve been struggling with these two errors in the site health check for a while
   now.`The REST API request failed due to an error.
 * `Error: cURL error 28: Operation timed out after 10018 milliseconds with 0 out
   of 0 bytes received (http_request_failed)`and`The loopback request to your site
   failed, this means features relying on them are not currently working as expected.`
   `
   Error: cURL error 28: Operation timed out after 10017 milliseconds with 0 out
   of 0 bytes received (http_request_failed)``
 * Both errors appear to be from the same problem, but I can’t seem to figure it
   out. I’ve read troubleshooting tips on several websites, all of which claim you
   can resolve the problem by following the numbered steps they detail.
 * I’d done that, to no avail.
 * This is a FreeBSD 13.0-BETA4 amd64 server running php 7.4.16, openssl 1.1.1, 
   and curl 7.78.0.
 * I’ve set the max file sizes and timeouts per suggestions in the pages that claim
   to fix the problem. I’ve tested several things in wp_config.php to no avail.
 * Mostly, after following all the steps, I’m left with “contact your hosting provider
   for help”. My hosting provider is no help. So, I’m on my own. I can’t help but
   think this is something very simple that I’m missing.
 * Here’s some tests I’ve run with curl.
 *     ```
       # curl http://localhost:80/add/50/50
       <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
       <html><head>
       <title>403 Forbidden</title>
       </head><body>
       <h1>Forbidden</h1>
       <p>You don't have permission to access this resource.</p>
       </body></html>
   
       # curl http://localhost:443/add/50/50
       curl: (7) Couldn't connect to server
   
       # curl https://localhost:443/add/50/50
       curl: (7) Couldn't connect to server
   
       # curl http://blog.vvfh.org:80/add/50/50
       <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
       <html><head>
       <title>302 Found</title>
       </head><body>
       <h1>Found</h1>
       <p>The document has moved <a href="https://blog.vvfh.org/add/50/50">here</a>.</p>
       </body></html>
   
       # curl http://blog.vvfh.org:443/add/50/50
       <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
       <html><head>
       <title>400 Bad Request</title>
       </head><body>
       <h1>Bad Request</h1>
       <p>Your browser sent a request that this server could not understand.<br />
       Reason: You're speaking plain HTTP to an SSL-enabled server port.<br />
        Instead use the HTTPS scheme to access this URL, please.<br />
       </p>
       <hr>
       <address>Apache/2.4.46 (FreeBSD) OpenSSL/1.1.1j-freebsd PHP/7.4.16 Server at blog.vvfh.org Port 80</address>
       </body></html>
   
       # curl https://blog.vvfh.org:443/add/50/50 
       curl: (35) OpenSSL SSL_connect: Connection reset by peer in connection to blog.vvfh.org:443 
       ```
   
 * /etc/hosts has: `::1 localhost localhost.vvfh.org
    127.0.0.1 localhost localhost.
   vvfh.org`
 * /etc/resolv.conf has: `search home.rcousins.com
    nameserver 8.8.8.8 nameserver
   8.8.8.5`
 * My gut tells me I should be able to connect to localhost on the apache server,
   but I have Listen (in httpd.conf) set to
 *     ```
       Listen 127.0.0.1:80
       Listen 127.0.0.1:443
       Listen ::1:80
       Listen ::1:443
       Listen 10.0.0.110:80
       Listen 10.0.0.110:443
       ```
   
 * and it still rejects connections.
 * At this point, I’m at a loss.
    -  This topic was modified 4 years, 8 months ago by [txantimedia](https://wordpress.org/support/users/txantimedia/).
    -  This topic was modified 4 years, 8 months ago by [txantimedia](https://wordpress.org/support/users/txantimedia/).
    -  This topic was modified 4 years, 8 months ago by [txantimedia](https://wordpress.org/support/users/txantimedia/).
    -  This topic was modified 4 years, 8 months ago by [txantimedia](https://wordpress.org/support/users/txantimedia/).
    -  This topic was modified 4 years, 8 months ago by [txantimedia](https://wordpress.org/support/users/txantimedia/).
 * The page I need help with: _[[log in](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fwordpress.org%2Fsupport%2Ftopic%2Fthe-dreaded-rest-api-and-loopback-errors%2F%3Foutput_format%3Dmd&locale=en_US)
   to see the link]_

Viewing 4 replies - 1 through 4 (of 4 total)

 *  Moderator [t-p](https://wordpress.org/support/users/t-p/)
 * (@t-p)
 * [4 years, 8 months ago](https://wordpress.org/support/topic/the-dreaded-rest-api-and-loopback-errors/#post-14802084)
 * > The loopback request to your site failed
 * Please ask your hosting provider why loopback is failing on their server.
 * > Error: cURL error 28
 * Please review [https://wordpress.org/support/article/common-wordpress-errors/#error-28](https://wordpress.org/support/article/common-wordpress-errors/#error-28)
 *  Thread Starter [txantimedia](https://wordpress.org/support/users/txantimedia/)
 * (@txantimedia)
 * [4 years, 8 months ago](https://wordpress.org/support/topic/the-dreaded-rest-api-and-loopback-errors/#post-14802136)
 * I don’t think my hosting provider can answer that question, but I’ll ask.
 * I admin another server that is working fine. It’s running pretty much the same
   setup as this problematic server. The webserver isn’t even configured to respond
   to requests on localhost. Yet, I’m not getting this loopback error. Or the REST
   API error.
 * I reviewed the article. /tmp is at 0%. (11MB out of 49G used.) There are 7 files
   in /tmp. I don’t know how you can tell if the cache is full. Perhaps you can 
   tell me?
 *  Thread Starter [txantimedia](https://wordpress.org/support/users/txantimedia/)
 * (@txantimedia)
 * [4 years, 8 months ago](https://wordpress.org/support/topic/the-dreaded-rest-api-and-loopback-errors/#post-14804981)
 * Further information. This host is a VPS on a private IP. The public address is
   routed to it internal to that network.
 * Further testing I’ve done. This server has fail2ban installed, so I stopped the
   firewall, restarted apache and retested. Same result. Something is preventing
   curl from connecting to the host on its public IP.
 * When I ran the curl command from my laptop here at home, I got an instant return
   of the home page.
 * I’m going to talk to the hosting provider about the design of the network. It’s
   possible there’s another firewall rule somewhere on the network that is blocking
   the traffic.
    -  This reply was modified 4 years, 8 months ago by [txantimedia](https://wordpress.org/support/users/txantimedia/).
 *  Thread Starter [txantimedia](https://wordpress.org/support/users/txantimedia/)
 * (@txantimedia)
 * [4 years, 8 months ago](https://wordpress.org/support/topic/the-dreaded-rest-api-and-loopback-errors/#post-14809674)
 * The hosting provider is complaining that to resolve this issue he will have to
   implement hairpin NAT, and he doesn’t want to do that.
 * We’re moving to a different provider.

Viewing 4 replies - 1 through 4 (of 4 total)

The topic ‘The dreaded REST API and loopback errors’ is closed to new replies.

## Tags

 * [loopback](https://wordpress.org/support/topic-tag/loopback/)

 * In: [Fixing WordPress](https://wordpress.org/support/forum/how-to-and-troubleshooting/)
 * 4 replies
 * 2 participants
 * Last reply from: [txantimedia](https://wordpress.org/support/users/txantimedia/)
 * Last activity: [4 years, 8 months ago](https://wordpress.org/support/topic/the-dreaded-rest-api-and-loopback-errors/#post-14809674)
 * Status: not resolved

## Topics

### Topics with no replies

### Non-support topics

### Resolved topics

### Unresolved topics

### All topics
