ok, thanks for clarifying.
i just did a clean test as suggested and do indeed see the Accept-Ranges header being returned automatically by nginx.
in doing that - the mp4 video still does not stream/pre-buffer as i am desiring.
i accessed the test video file that is on the homepage of the video.js website via curl and there is no Accept-Ranges header being sent in the response for their file, on their server... yet their test video file preloads and streams correctly when i play it via the video.js player on my local dev machine (served via nginx).
when i download their test video and play it via my same dev machine here, the preloading does not function.
so...
a) Accept-Ranges is not the cause of the lack of streaming here.
b) the same file will preload on another server, yet not on mine (the headers being sent from the other server are not obviously different to the ones being sent from my own nginx server).
i even downloaded a php class to correct the moov atom for the mp4 file, in case that was the challenge here. although some files did need to be fixed, the issue of the video files' moov atoms being in the wrong position, is not the cause of my main challenge with the pre-buffering of videos.
so now i am stuck again, with no idea of what i am missing from my server to activate pre-buffering of video. perhaps i will message the video.js coders directly.