Plack is the namespace for an implementation of the PSGI standard. It is a more powerful modernization of and diversion from CGI. nginx wisely does not even support CGI (out of the box). That means you must use PSGI/Plack at least, though if you're feeling like redecorating your rooms in rubber you can use CGI beneath that. All modern Perl webframeworks (Catalyst, Mojolicious, Dancer2…) use PSGI as their interface layer because it is easily the best and most flexible way to do things today. Here is a simplistic but working set of code to run a toy app over PSGI through uWSGI/nginx.
Code <-> Dancer2 <-> PSGI <-> uWSGI <-> nginx <-> Clients
I recommend uWSGI over Starman.