Jump to content

Shared Hosting vs. VPS


happywire
 Share

Recommended Posts

As a freelancer or part of an agency, how do you do it, what do you suggest to your clients?

Get a decent shared host or buy a possibly much cheaper VPS and do it all yourself?

Looking at the prices of

https://www.hetzner.com/cloud

and comparing those to shared hosts that do have SSH access, have proper PHP modules/extensions installed and enabled, well what do you pick?
I mean a shared host with a decent configuration can easily be many multiples of what the CX31 is for example.

I am thinking the time it takes to set up a VPS including monthly maintenance and the option to easily scale if things take off might be worth it, no?
Then again if you have many clients and all are on a VPS you do/did setup yourself and things go bad you are gonna find yourself in a bad place.

This is for simple to medium sized websites, low to medium traffic, no high traffic portals or shops with thousands of requests per second/minute/hour.
Then again if a client needs that and is on a VPS scaling would not mean "oh now we need to move host and it's gonna take a while.."

How do you do it?

Link to comment
Share on other sites

Most of my clients already have some sort of webhosting and only in very few cases it needs an update in terms of more features like SSL and similar things.

If they don't have webhosting I recommend a middle-sized shared hosting from trusted providers. An all-in-one package works in almost every situation. 
Domain + Hosting + E-Mail management = ~15 EUR/month that's it and all they need.

In the past I have had root servers and VPS to host client projects. It was a nice option, additional money, and a good way to keep clients close. But as regulations and laws changed over the past years I decided to stop offering hosting services. 

Hosting isn't that expensive anymore and you find really good options out there. Hosting providers are there for a reason. They take the hassle away from me.

If your client already has a website, take a look at their web analytics to see how much traffic there is. You can then decide which way to go and what package might be a good deal if there are performance issues.

As far as I can say... a good ProcessWire site doesn't need that much of a high performance hosting. Unless you can't use ProCache even a super cheap $3 shared hosting might work well enough.

ProcessWire sites with ProCache, almost no real-time-database interactions, and only a few forms have a nice small footprint.

  • Like 6
Link to comment
Share on other sites

@wbmnfktr Great reply thank you.

Is there a list of features you check for in a shared host?
What do you deem important things a shared host should have?

For example I have a nice script that pushes and pulls between dev, stage and production, including db.
This uses ssh, mysql & php (cmd line), scp and rsync, so those would be already quite good to have on the host.

I imagine similar to WP, PW also needs some search and replace of the local dev domains to the live domain in the db.
No worries I am doing all this locally and then pushing to stage or live.
So I guess/hope https://interconnectit.com/products/search-and-replace-for-wordpress-databases/can be used for that?

I would like to refrain using FileZilla, clearing db on host, uploading db, then somehow changing local domain to live domain in there and then uploading files manually.
Have heard about Duplicator for PW but not checked it out yet, bottom line, if dev can be pushed to stage or live with a single command of a simple script, that is what I am after.

Then, I am now with a client that does not have any image processing features (webp conversion) on their shared hosting and it is a pain to work with.
Client was with this host before we started work.
So ImageMagick with webp support or GD enabled and compiled for webp support on PHP would be 2 more points to have in place.

What else?
 

Link to comment
Share on other sites

50 minutes ago, happywire said:

I imagine similar to WP, PW also needs some search and replace of the local dev domains to the live domain in the db.

Nope, nothing like that. I never understood that nonsense with hardcoding full URLs into the DB. You might adjust a few lines in your site/config.php (allowed domains whitelist, disable debug-mode, change DB-credentials etc.), but that's about it.

  • Like 1
Link to comment
Share on other sites

@happywire check out services like https://runcloud.io or https://ploi.io for managing multiple vps. 

For deploying code https://github.com/git-ftp/git-ftp works really well for a simple workflow, and syncing files / database up or down can be done in one command with a simple bash script if you have ssh access, there are plenty of references if you search GitHub gists.

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

3 hours ago, happywire said:

Is there a list of features you check for in a shared host?

No... it always depends on the project and website. But there are a few things I don't want to miss.

Those are:

  • SSL/https with Let's encrypt
  • SSD webspace because it's faster
  • Admin panels like cPanel are nice but not necessary
  • SFTP/SSH is a benefit
  • Cron of any flavour is highly appreciated
  • GDPR compliance in terms of data-processing-agreements (or however they are called)
3 hours ago, happywire said:

What do you deem important things a shared host should have?

  • A good reputation (4.5+ ratings)
  • A good website with all relevant details (Imprint, Privacy, GDPR)
  • A good website that's not powered by a WordPress theme
  • More than 5 years in business
  • Servers in my home country
  • Free or local support hotlines
  • + the things mentioned above

Yes... It's more about the company than the webhosting itself but these things are as important as everything else. Maybe even more.

3 hours ago, happywire said:

I imagine similar to WP, PW also needs some search and replace of the local dev domains to the live domain in the db.

Nope... never did anything like that with a ProcessWire project.

3 hours ago, happywire said:

I would like to refrain using FileZilla, clearing db on host, uploading db, then somehow changing local domain to live domain in there and then uploading files manually.
Have heard about Duplicator for PW but not checked it out yet, bottom line, if dev can be pushed to stage or live with a single command of a simple script, that is what I am after.

FileZilla is S/FTP so about 99% of all webhosting companies should fit here. ? I prefer Site Profile Exporter as I create a full copy of everything with only a few clicks. I know others here that prefer Duplicator. So... try everything and decide which way to go.

Regarding sync-scripts of any kind... not mine at all.

3 hours ago, happywire said:

Then, I am now with a client that does not have any image processing features (webp conversion) on their shared hosting and it is a pain to work with.
Client was with this host before we started work.
So ImageMagick with webp support or GD enabled and compiled for webp support on PHP would be 2 more points to have in place.

As said before... it really depends on your needs. I never used webp support in a live project so far and therefore never had the need of special modules. But yes... put it on your checklist and later on ask hosting companies if they support those features.

  • Like 3
Link to comment
Share on other sites

Great points @wbmnfktr! Thanks for pointing me to ploi.io @Mikie - looks like a good alternative to runcloud ? 

I'm using my own VPS's at reliable hosting companies in AUT/DE as for the reasons @wbmnfktr mentioned. Personally I don't do any installations on 3rd party hosting providers any more. For me it was always a pain at some point. For example one hoster just didn't have SSH access and there was no option to transfer the whole site at once. Transferring the whole site via FTP would have taken hours... that's really not worth the saving of 5€/month compared to having all on my VPSs and full control over everything and being efficient and fast. I've never had problems with my clients paying 5-10€/month for hosting on my server, when I tell them that setting up the website on their servers costs extra money and is a lot less efficient and more expensive in everyday operation. And that's not a lie!

But it depends on your business... If you only do simple websites with no extra needs and maybe even no updates for several years, then it might be easier and better to choose a standard hosting provider that does everything for you (including invoicing, which can be tedious). 5-10€/month is for sure not worth doing everything on your own if you don't need any advanced features (like ssh, git support, etc).

  • Like 4
Link to comment
Share on other sites

Hey @bernhard ploi does look good and good to get on cheap plans now before they up the price later like these services always do. However when I tried it out they hadn’t set up multiple system users yet, and I found their admin a bit all over the place. 

I’m sticking with runcloud for now, however with them I’ve had problems trying to amend Nginx configs for their Nginx + Apache setup, they lock you out of certain sections and it makes some things like cache headers hard to customize. 

Another one that is very different but technically much more secure, optimized and capable is this https://apnscp.com/, but the documentation is literally all over the place. More info here https://amp.reddit.com/r/webhosting/comments/arqya9/built_a_control_panel_over_16_years_free_lifetime/

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

I run a cpanel server in AWS on their cpanel cloudlinux image.  I turn on the nightly backup option in cpanel that stores versioned backups for 7 days.  If a client gets hacked, I can roll back 7 days with only one versioned backup set.  

I have the default ssd for the websites and attached a regular magnetic hard drive for cheaper backup storage for the nightly backups. 

That config doesnt support offsite s3 upload, so I tell aws to do a nightly snapshot of my disks and keep them for 5 days.  This also saves me bandwith since those don't count against you. 

Versioned backups takes 15 min compared to 4 hours or more if you copy every file. 

cpanel does auto ssl and has a file browser that allows you to upload a zip file of the website, and decompress by right clicking it.  Pretty handy. 

I do not like using cheap client hosting as it is never setup well.  My php settings as far as ram and timeout scripts can use are better. I also have a large mysql cache.

  • Like 1
Link to comment
Share on other sites

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...