0

Background: We are using Laravel v8.83.5 running on nginx and PHP 7.4 Amazon Linux EC2 instance which is powered by an Elastic Load Balancer. We provide an iCalendar feed as a URL to customers which they can import into AirBNB, VRBO and other OTA.

Issue:

  • When our iCal Feed URL is added to VRBO, it's accepted and parsed by it.

  • When we use our iCal Feed URL on AirBNB, it throws an error 'We're having trouble syncing this calendar. Try importing it again.'. The same URL downloads an .ics file when visited from the browser and also works when importing into another iCal compatible calendar. The syntax is valid as has been checked on https://icalendar.org/validator.html as well.

To identify the issue,

  • we tried a different URL on another Digital Ocean server which returns the same response but does not have an ELB behind it and also uses nginx and php 7.4. That URL is accepted by the AirBnB importer. A screenshot of the response headers for this second server's request is attached here

  • A screenshot of the response headers for which the request fails on AirBNB is attached here.

  • When trying via postman, both requests return the same response content. The general headers are same as well.

  • On checking nginx access logs, the response code return to AirBNB by the servers is 200 in both cases.

  • If we pass a static file into the AirBNB importer from the server that's behind the ELB, the URL works on AirBNB.

We have tried

  • disabling gzip and cache control in nginx on the response being returned.
  • switching between apache and nginx on the server that sits behind the Amazon ELB.
  • Removed all global middleware added by Laravel on that route
Himanshu Sharma
  • 406
  • 3
  • 8
  • I think you would have a faster and "better" answer if you post this on [sf], but disregarding that, were you able to the get full response back? Instead of `We're having trouble syncing this calendar. Try importing it again.`, did you get a detailed error of what is being returned when this happens? What about whitelisting URLs? Do you have to whitelist URLs or IPs? – matiaslauriti Nov 14 '22 at 10:09
  • In the browser's network tab, I can see the error in AirBnb's request - `HTTP 500 response from http://hanaro-production.hanaro-production:4362/api/external_calendar_mappings` – Himanshu Sharma Nov 14 '22 at 11:34
  • So there is no error at all, just that message with a URL? is that your URL? If that is your server, can you check the logs or any 3rd party service you have associated for tracking errors like Bugsnag or Sentry? – matiaslauriti Nov 14 '22 at 13:30

0 Answers0