Building my first server/website. Would love advice

My sister makes and sells jewelry where she lives.
-I thought making a website for her would be a nice gift for the holidays.
I know I could go the easy way and pay a website like square space to do all the heavy lifting…
but honestly where is the fun in that.

I have 3 weeks off and a $150 dollar budget.

I need to find some cheap hardware.
I need to learn how to make a website.
I need to make the website look good.

What could go wrong?

If there is any interest in watching a complete novice jump head first into this sea, I will document the attempt and update.

2 Likes

I only have tertiary experience in building websites, but I'd say unless you're going for a rather minimalist design, it is hard to make it look good if you have next to zero experience in HTML. There are programs which are basically drag and drop, which might come in handy. The names escape me at the moment though.. Also, do you have a static IP address for the server and a domain name?

Digital Ocean Droplet.
Probably a $5/month rig or #10/month rig would work just fine. Pick your hardware and pick your distro and 60 seconds later you have console access.
Drupal preconfigured or Wordpress preconfigured options also form DO.

Not to discourage you from playing with servers and all that fun stuff but if you want a reliable and secure website for your sister's website I would go with a professional hosting service. Doesn't have to be expensive if you find a good place you can get a domain and a place to develop for less than 150 per year and you can withdraw at any point.

I'd start to make the website on your computer and then after that move it to a server. There are tons of good tutorials all over the place, the way I started out was w3schools(http://www.w3schools.com/) and I just did it instead of playing a game just sit down and code away.
For a simple website I would start with html and css to make it look good and then when you have a good base to work on you can start adding the more advanced things like javascript to make your website more interactive and attach a database to the backend that can store some purchase history and maybe even build a full fledged e-commerce site.

When you are happy with a first release go to some hosting service like digital ocean and get a cheap 5$ vps where you can install what you need and maybe even make yourself a Docker (https://docs.docker.com/engine/getstarted/) image so you can move the code easily.

2 Likes

Love your Enthusiasm and Tolerance of failure!
cant really offer any good advice because I'm also a server novice and havent really touched web design but here I go:

  1. Lynda.com free trial to learn the basics of web design and start building because that will definitely be the most time consuming part.

  2. The only way to build a website for free is to write it all by hand in a HTML editor which is really timeconsuming and it will look neither cool nor elegant. (Take this one with more than a few grains of salt)

  3. Mabe use the extra Headroom for a Nas/Filesrver with samba for example and mabe even install OwnCloud for a full blown Home cloud

  4. For hardware I (a novice myself) would recommend an old laptop because of its relatively low powerconsumption, small form factor and Built in UPS (battery for power outtage)
    You could even go for one which has some problems with its display and get it even cheaper that way

  5. If you are relatively new to linux I would recommend to start with a desktop version of ubuntu for example because e gui made my life soooo much easier when building my fileserver and Cloud.

  6. The most important tip for last:
    Always back up your System all the time because when you break things (and you will) you dont want to start from scratch every time
    The best way i found was to use Timeshift rsync and do a system snapshot before every major change

Good Luck and May you learn a lot on your Journey

First, thanks for the quick replies! I believe there is one called word press I keep hearing mentioned. I would prefer to use HTML however if that becomes overwhelming, you are right I will likely turn to something more user friendly.

Nope. I understand that you have to purchase domain names and I have one picked out but not purchased. When it comes to static IP addresses [correct me if I am wrong] that is a setting in your computer, then you simply port forward traffic through your router to that location (at least that’s how it worked when I ran a game server off my laptop). Or is it more nuanced than that with websites?

Sorry about the slow, of these replies. Firstly don’t worry about discouraging me, one of my many flaws is rooted in being incorrigible.
Second I am definitely considering a professional hosting service like digital ocean droplet mentioned above @sanfordvdev, however I would like to at least attempt to make my own. If that fails or becomes clearly overwhelming I will certainly fall back on this advice.
Finally thank you for the time put into your reply. I love the idea of starting it on my computer and moving it over later. I hadn’t thought of that but it seems so obvious now. Thanks for all the links and information; I’m on w3schools.com right now.

Or, you could just use this https://www.ecwid.com/

@yoYoyo Thank you for the time you put into that reply, I appreciate the support. I have been using Ubuntu for a while now, mostly just for some hobby coding. I was hoping to use openSUSE but perhaps Ubuntu may be more beginner friendly.
I do have an old laptop laying around, that I've been using as a home media server. I was worried it wouldn't have the multi threading capabilities to handle more than a couple people on the site as it's an old duel core.

@Dynamic_Gravity I do like the idea of using an embedded store in the site as that would keep me far away from the financing security subject. Thanks for the suggestion.

yes!

use a virtual machine to develop on. virtualbox is a good, free way to start out.

NO!

go to MDN for reference material.
if you like videos, check out google's "from the ground up" series.

Keep in mind that a shop is much more than a "basic" website, however. It's a lot of stuff to learn and to practice, and the security and handling-financial-transactions concerns to go with. To be honest, if you have only a few weeks, you'd probably want to use something like squarespace. (of course, you can still learn also!)

This is a really important point and definitely what I was looking for with this post. Because I would like to stay reasonably distanced from the handling-financial-transactions and the concerns therein, Iv been looking at some services that solely handle the transaction portion of your site for you. Do these sound like a good idea for ensuring security of the financial portion of the site?

1 Like

depends on what you mean by that. e.g., sites like squarespace will have integrated shopping carts and cc handling. this is fine. but something like braintree (while really nice for developers) is still not really suitable for beginners.

Guys, thats what I linked. Ecwid is free is you have 10 products or fewer to sell in the store. Handles payment. And since its a widget, you can either use the template store they create for you, or you embed the widget on your own custom web page, while they handle the rest. Ecwid is fucking awesome.

I'm no server or website guru but I've been down this path a little. First, disclaimer, an eccomerce platform like BigCommerce or what not would be the easist and most reliable, but like you said, whats the fun in that?

When my small eccomerce business wound down but I felt like having the choice to still put my domain name to use and maybe sell a thing or two I did the following:

That one got me, splunking my home router is what helped me find it was happening.

  • things I still need to do, follow the above mitigation as right now my Pi is offline, and stop using the SD for everything and get an external HDD to pickup some of the load.

For uptime, reliability, low maintenance and security, this is not the route to go with, but if this is for learning, growing and fun, its a great route! The cost of hardware and power draw was minimal, and using things I already pay for (ISP, current laptop to SSH into Pi, home server for Splunk, already have domain name paid for).

Hope this helps.

A dedicated server, or even a VPS is overkill for a simple website. A reliable hosting plan is the way to go.

Tinkering with the server thingy will take months (Very least). May i recommend CentOS 6.

Try to install XAMPP to have a local testing apache/mariaDB serrver. try to install Wordpress on it. its simple read the instructions on wordpress.org. Thinker with it. add the jewellery, articles. Conatacts and all that. Find appropriate template. When you are happy with what you got locally go on the search of a reliable cheap hosting plan. Upload everything and you are done.

By then you would know what to do next.

You could buy a old server on ebay or even use a raspberry pi if there isnt allot of traffic but keep in mind that your ip address is linked to the site so if anyone wants to DDOS your site then your internet will go down and you may have to get a static ip address or deal with dynamic dns

There are some nice html5 templates I found at https://html5up.net/

Maybe one of them will work for you...

A shopping website is something that's quite difficult to make - I'm programming since 1.5 year, and I still wouldn't even think going into stuff like that. Better just configure something like Squarespace.

1 Like

I like that you want to learn how to make website, but website for jewelry shop is suicide, they want everything pretty and perfect and effects all over the place, trust me i coded these at work and i nearly jumped out of window! :D

tbh you will be probably better off just buying some wordpress template and if you want to learn how to code, try doing stuff with that, thats how i learned coding, from editing templates and such. You could just start with basics, changing photos, colors, fonts, so it would look at least bit different than original template

About hardware, you really need whole server / VPS for 1 website? :P

PS: Would buy shared webhosting and for learning / experimenting / developing, run virtual machine on your own pc or if you have any extra hardware around

@wUFr
Haha from all the advice I've received what I'm doing is a terrible idea.

So far though it's been a blast. I'm currently running a virtual machine with an Ubuntu server, and I'm learning and working on the CSS right now.

If when I get finished it doesn't look too pretty, I will likely turn to Wordpress, but right now I'm just learning and messing around.

1 Like