Deployment check

Every link in the weather chain, in order. The first red row is the problem.

All checks passed. Weather should be working in the app — reload it and reopen the airport.
PHP is executing
PHP 8.5.12 via litespeed
pass
Script path
Running as /api/check.php
pass
api/metar.php present
5,866 bytes
pass
cURL extension
8.22.0
pass
allow_url_fopen (fallback)
on
pass
Cache directory writable
/home/pretillz/public_html/api/cache
pass
Outbound HTTPS to aviationweather.gov
HTTP 200 in 299 ms, 434 bytes
pass
FAA returned usable JSON
KLNS: METAR KLNS 312253Z 30004KT 10SM CLR 12/03 A3046 RMK AO2 SLP315 T012200
pass
api/metar.php answers correctly
station KLNS, wind 300° 4 kt
pass
Served over HTTPS
yes
pass

If “PHP is executing” passes but “api/metar.php answers correctly” returns HTML, the request is hitting a 404 page instead of the script. Check that the folder is exactly public_html/api/ (lower case), that the file is metar.php and not metar.php.txt, and that no cPanel “hotlink protection” or security rule is blocking /api/.

If outbound HTTPS fails, your hosting plan is blocking the connection to the FAA. That is a Namecheap setting, not a code problem — open a support ticket asking them to permit outbound HTTPS from your account to aviationweather.gov. Until then the app still works: open the airport and tap Enter wind to type the wind from the ATIS, and everything else — runway lengths, percentages, the abort logic — runs normally.

Machine-readable version: check.php?json=1. Back to the app.