This tutorial assumes a decision you already made: the guild site will live on hosting, with your files, not inside a builder. If you are still comparing the two, read dedicated hosting versus builders first. If you have chosen, the path below goes from zero to an HTTPS address with the minimum pages.
Here, Battlehorns is hosting for gaming communities — guilds, clans, and esports — not the metal band. The reference free plan includes a subdomain, PHP 8.3 by default, one MariaDB database, one FTP user, Let's Encrypt, 700 MB of SSD, and 5 GB of monthly traffic. Confirm the numbers on shared hosting the day you order. The context for those limits is in free guild hosting.
Create the account
- Open register and sign in with the Discord account the guild should tie to the officer in charge, not a personal account you will lose.
- Confirm the name you want on the platform. That is the client-area name, not necessarily the public site title.
- Read the terms, especially free-plan quotas, subdomains, and backups. Backups are yours.
If the guild's Discord owner changes later, client-area access has to change too. Note who holds the FTP password and the account. Do not paste them into the officer channel.
Choose the subdomain
On the free plan the address is name.battlehorns.net. Choose name as if you would say it out loud in a trial: the guild name, short, no spaces.
- Lowercase letters, numbers, and hyphens only. Up to 63 characters. No double hyphen. Not digits only.
- Reserved names include
www,mail,ftp,admin,api, andsupport. The order rejects them. guildnamebeatstest123. The name stays in bios and league sheets.
The order is placed in the client area, under orders, after you look at plans on hosting. Select the free plan if you want zero cost. Accept the terms and submit once. If an error appears, read it.
Provisioning creates the site, the FTP user, the database, and the certificate. When it finishes, store the FTP host, user, and password somewhere that is not Discord.
The database
There is one MariaDB database. Enough for applications and a handful of news posts. Not enough for a forum, a wiki, and a gallery at the same time.
In the client area, open phpMyAdmin for that hosting. Create only the tables you need. For applications: in-game name, role, region, hours, a profile link, and a short note. Do not ask for the game-account password. Do not ask for a phone number on the first form.
- Connect with
PDOormysqliand prepared statements.mysql_connectdoes not exist on PHP 8.3. - The database password stays out of public repositories.
- Export a dump before you run installers. A script run twice can wipe the week's table.
If the guild has no form yet, you can skip the database on day one. A static index.html already justifies the address.
Files and SSL
- On your PC, create a folder with
index.html, a CSS file, and an emptyimgfolder. - Upload those files into
public_html, not into the account root if the client shows both. - Open
https://name.battlehorns.net. Let's Encrypt for the subdomain is issued with provisioning. Do not buy a separate certificate for this name. - If you see a directory index or a default page,
index.htmlis in the wrong place or anindex.phpis winning. Keep one index.
Export images at 1600 px as JPEG or WebP before upload. The disk is 700 MB. A backup.zip inside public_html counts toward the quota and can be downloaded. The longer FTP guide is HTML, PHP, and FTP. Use relative links or HTTPS. Mixing in http:// breaks the padlock.
Essential pages
- Home — name, game, schedule in one sentence, a button to Discord or to the application.
- Rules — what is required and what gets you removed. Short.
- Recruitment — who you want, what you offer, how to apply. The page that converts is in recruitment and the member panel.
- Members — either a short true list, or a link to GuildOps for people who already joined. Do not publish two lists that contradict each other. The app is explained in GuildOps.
On a phone, all four must read without horizontal zoom.
Connect Discord
The site is the address. Discord is the room. On the site, one button, with the invite you control (preferably one that does not expire in an hour). When the invite changes, you change the button. In Discord, the rules channel points at https://name.battlehorns.net. The pairing is described in Discord and your website.
When the first upload fails
Three failures cover almost every first-day ticket. The file went to the wrong folder: the FTP client shows the account home and public_html inside it; the site only reads the second. The browser shows old content: force a refresh, or you are editing index.html while the server serves index.php. The padlock is missing: you opened https:// on the subdomain you ordered, not a name with capitals or www in front.
If the database refuses the connection, use the database name, user, and host the client area showed. Do not use localhost only because a generic tutorial says so. And do not run a WordPress installer "just to see" before you measure the size: demo themes blow past 700 MB.
Final checklist
- Account created and free plan active on the right subdomain.
https://opens your index, with no certificate warning.- Rules, schedule, and how to join are visible without a login.
- FTP and the database password are not in chat.
- Images resized. No backup zip in the public folder.
- If there is a form, you tested it yourself and exported a dump.
- Discord points at the site. The site points at a valid invite.
- You know who updates the page next week.
If FTP or the certificate fails, open a ticket at support with the subdomain and a screenshot. When you need your own name, the step is a paid plan and a domain, as in a custom domain. If you change your mind about builders, the comparison continues in Battlehorns, Guildtag, Shivtr, and Guildwork.
In this series: free guild hosting, hosting or a builder, the hosting guide, GuildOps, the setup tutorial, the platform comparison, and recruitment that converts.
pingcraft948 Sep 22, 2026 11:05 PM
da conta Discord ao HTTPS: subdomínio, base MariaDB, FTP e as páginas mínimas do site da guilda na Battlehorns. ok, mas depois aparece 1600 e a escala muda. é essa figura que eu queria ver desmontada — o resto parece contexto à volta