The *_flags variables are only for built-in daemons -- and are used, by name, in the /etc/rc shell script. Spend a few minutes reading that script and you will see how the various *_flags variables are utilized.

the pkg_scripts variable is for the admin to name specific third party scripts, installed by pkg_add in /etc/rc.d, that he or she wants to have executed by the /etc/rc shell script at boot time.

Starting with 5.0, *_flags variables were made generic and could include third party daemons. Prior to that point, they were never used with third party ports/packages.

With that change, if any third party script (let us call it <daemon>) in /etc/rc.d requires flags or user to be set, the admin would set <daemon>_flags or <daemon>_user variables in /etc/rc.conf.local. The <daemon> script still requires inclusion in the pkg_scripts variable, so that /etc/rc knows in what order to execute them.

Built-in daemons -- those that come with the base OS, and are not installed from the ports/packages system -- are not listed in the pkg_scripts variable. You only need to change the built-in-daemon_flags variable to something other than =NO.

In the above, start up options would be in /etc/nginx.conf. Since flags are now part of third party daemons you could also try nginx_flags="-u" but this does give you nested "" and a good chance of scripting error.