I assume you are running localhost on a Windows OS; its filesystem and naming are case-insensitive.
Linux and other UNIX variants are case-sensitive. The HTTP server will use the OS filesystem to lookup the resource that you request. Unfortunately, that differs by platform.
If you want to replicate your environment, use identical OS on development and production.
Either install Linux in a VM and develop on that, or move to a Windows host provider.
That aside, there are apache modules that will let you achieve case insensitivity on Linux ( How do I make URLs case insensitive in Linux server ), but you should avoid that. Just use the proper case for the URIs and move on. In general, this is why much of the non-Windows web development world uses lowercase for files and URIs. Mixed case naming conventions can be trouble when applied to case sensitive filesystems because of minor variations and differing opinions from developer to developer or company to company.