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.2.33 via litespeed
pass
Script path
Running as /api/check.php
pass
api/metar.php present
5,866 bytes
pass
cURL extension
8.21.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 335 ms, 452 bytes
pass
FAA returned usable JSON
KLNS: METAR KLNS 162053Z 21006KT 8SM CLR 29/18 A3027 RMK AO2 SLP248 T0294017
pass
api/metar.php answers correctly
station KLNS, wind 210° 6 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.