Problem solved, I think: the agent comes with its own libcurl.so.3 in /opt/oms/lib, it doesn't use the system one at all. Once I replaced that, it seems to be succeeding. Previously:
$ cd /opt/microsoft/omsconfig/Scripts
instance of OMI_Error
I usually stick to a 755 (or rwxr-xr-x) on my web root, but I do not think this is the issue you're running into since your directory is already set to that. nginx should have access to your directory. The question then becomes the permissions (or existence of) the file you're trying to access. The files within your directory will need to be readable by ...
According to the Nginx docs you can configure the user which runs Nginx. By default the user is nobody.
You can read this Ask Ubuntu question that explains how to configure Apache2 to run as a different user. The default user running Apache2 is www-data.
A common strategy, and one I think may work for your goal, is to assign the users that need to deploy ...