That looks setup perfect and should result in the direct access to the product URL 404'ing.
The only thing I could suggest now.. is to (on a development server) disable each plugin you have one by one (clearing cache inbetween disables) and then refreshing the frontend to see if / when it 404s.
Regards,
Andrew