Executable binary file permission

You need to make sure that application executable binary has proper file permission. It needs execution bit to be set.

$ chmod 744 /path/to/app.cgi

For most uses-cases, 744 permission is suffice if your web server is run as your user account. If web server run as separate user than owner of cgi file, for example as www-data. You can add www-data as group

$ sudo chown my_user:www-data /path/to/app.cgi

and then set executable binary permission to 774.

If you do not have root privilege access, such in shared hosting environment, then use permission of 755. It will make application binary executable to everyone.

Deploy to various setup