Ok, the problem is clear:
- Your composer based Drupal site put code base to the /web folder
- You are using a shared hosting which maps your primary domain to /public_html, and you can't change that
Now your users will have to browse your site as http://example.com/web . And it is not cool.
So how to serve your site from the subfolder /public_html/web but removing the /web suffix so it becomes transparent to users?