I use calibre and calibre-web. I have the DeDRM and ACSM plug-ins installed in calibre so I can buy a book from ebooks.com or wherever, drop the acsm file in my auto import folder, then just download the drm stripped epub from calibre-web and import to the Books app on my iPad.
As a few people have pointed out, Kavita is a solid one. I ultimately used it because it saves your spot in the book server-side instead of with the browser (like calibre-web) so you can pick up where you left off on different devices.
Also has a pretty good PWA for your phone if you want to read on there.
@midas I have a weird problem with the android app losing my place in the book regularly. I finally just went to downloading the book with audiobookshelf and then using a different audio book player on android.
Calibre is highly regarded and works well with nearly all e-readers afaik. It has a local server option for browsing, uploading/downloading, and community extensions.