Let's get right in to creating a blockchain explorer for the Ethereum mainnet.
You can choose to run your own Ethereum full node or use one of the gateway API provider like Cloudflare's Ethereum Gateway. If you are running your own node then I assume you already know how to create a block explorer. Otherwise, keep reading.
Cloudflare's Ethereum Gateway is a free service which lets you interact with the Ethereum main network via simple JSON-RPC API. Lets start.
Create a CNAME Entry
I am going to use a subdomain etherscan.sameercharles.com to expose Ethereum JSON-RPC API to the internet. I use Gandi.net as a domain provider which lets me create CNAME entries quite easily (check you domain provider CNAME config). CNAME should point your domain (or sub domain) to cloudflare-eth.com.

You might have to wait anywhere between 0min to 4hours to have your CNAME entry take effect.
Update Cloudflare and generate SSL Certificate
Once you have created the CNAME entry, simple go back to the Cloudflare Ethereum Gateway to add you domain.

This will register your domain and generate and setup SSL certificates for you. Thats it! you are now ready to use your own website as an Etheruem Mainnet API provider.
Test
Use Chrome Postman app or simply send a curl command like this. We will test one of the methods 'eth_getproof' here.
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getProof","params":["0x1234567890123456789012345678901234567890",["0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000000000000000000000000000000000000000001"],"latest"],"id":1}' -H "Content-type:application/json" https://etherscan.sameercharles.com