L2JMobius

High Five [WEB] How to build a strong infrastructure for l2 websites.

Firekarev · 4 · 8406

Offline Firekarev

  • Vassal
  • *
    • Posts: 5
  • console.log('Beer')
All, this guide will help you to understand how your website has to be built.

First adivce. Don't use any tool/code/whatever you find in different forums. You can easily build a strong web system by yourself.

Where you should host your website

What stack you should use
PHP (Programming Language)
Laravel (PHP Framework, it solves authentication, connection to databases and mailing)
HTML
CSS
Javascript

How can I install Apache, PHP, Mysql in DO?

https://www.digitalocean.com/community/tutorials/how-to-install-linux-apache-mysql-php-lamp-stack-on-ubuntu-14-04

How can I install Laravel?
https://laravel.com/docs/5.7/installation

What about DDOS protection and SSL Certificate?

You can get it for free in https://cloudflare.com

How do I integrate it with my Lineage 2 server?

You can use Laravel Eloquent (PDO) to access to remote databases. Please read Laravel documentation.

Post in progress.






 



Online Mobius

  • Distinguished King
  • *****
    • Posts: 16010
FYI all projects use the same encryption for passwords and account tables.
Only Interlude has a few fields less.

-- ---------------------------
-- Table structure for accounts (Interlude)
-- ---------------------------
CREATE TABLE IF NOT EXISTS `accounts` (
  `login` VARCHAR(45) NOT NULL default '',
  `password` VARCHAR(45),
  `email` varchar(255) DEFAULT NULL,
  `created_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `lastactive` bigint(13) unsigned NOT NULL DEFAULT '0',
  `accessLevel` TINYINT NOT NULL DEFAULT 0,
  `lastIP` CHAR(15) NULL DEFAULT NULL,
  `lastServer` TINYINT DEFAULT 1,
  PRIMARY KEY (`login`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- ---------------------------
-- Table structure for accounts (Others)
-- ---------------------------
CREATE TABLE IF NOT EXISTS `accounts` (
  `login` VARCHAR(45) NOT NULL default '',
  `password` VARCHAR(45),
  `email` varchar(255) DEFAULT NULL,
  `created_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `lastactive` bigint(13) unsigned NOT NULL DEFAULT '0',
  `accessLevel` TINYINT NOT NULL DEFAULT 0,
  `lastIP` CHAR(15) NULL DEFAULT NULL,
  `lastServer` TINYINT DEFAULT 1,
  `pcIp` char(15) DEFAULT NULL,
  `hop1` char(15) DEFAULT NULL,
  `hop2` char(15) DEFAULT NULL,
  `hop3` char(15) DEFAULT NULL,
  `hop4` char(15) DEFAULT NULL,

  PRIMARY KEY (`login`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

What you try to make can probably be used by all branches, Interlude to Salvation.
;D



Online Liamxroy

  • Grand Duke
  • *****
    • Posts: 759
    • Adenaplease!
Excellent post .. keep going
I like Laravel but I prefer hand made php.