Is the issue occuring when using a Plex client within the same local network as the server? If so, it is likely caused by an issue with DNS. The app expects a secure connection to the server in order to load the preroll.
However, secure connection means your server has to be available under its own sub-sub-domain on the plex.direct domain in the local network. Which in turn requires your local DNS resolver (usually in your router) to be able to deliver that.
Since the DNS master server for all *.plex.direct domains is located outside of your local network, many local DNS resolvers refuse to use it for a host within the local network.
This is called “DNS rebinding protection” and is usually a good thing – except in this particular case.
(side note: if you have set “Secure Connections” to “preferred”, instead of “required”, the client apps are allowed to fall back to an unsecure connection which uses the local IP address of your server. For some reason though, this only works for the main media item, not trailers and other extras.)