Nginx cannot execute PHP. Apache with mod_php could blur that line. The usual modern setup is: Nginx accepts HTTP, then talks FastCGI to PHP-FPM, which is a manager for a pool of PHP worker processes.
Those workers are the processes that run index.php. If FPM is down, the socket is wrong, or the pool is full, Nginx will tell you with 502/504. Laravel will tell you nothing, because it never started.
This is the sentence that made the Nginx → FPM → Laravel article possible. PHP-FPM is not “PHP on the server”. It is the pool.