|
1 | | -## **EngineScript - Advanced WordPress LEMP Server** |
2 | | - |
3 | | -EngineScript automates the process of building a high-performance LEMP server. We've specifically built EngineScript with WordPress users in mind, so the install process will take you from a bare server all the way to a working WordPress installation with Nginx FastCGI cache enabled in about 30 minutes. |
4 | | - |
5 | | -EngineScript is meant to be run as root user on a fresh VPS. Initial setup will remove existing Apache, Nginx, PHP, and MySQL installations, so be careful. |
6 | | - |
7 | | -As this is a pre-release version, things might be totally broken day-to-day as we test different methods of building the server. |
8 | | - |
9 | | -#### Features |
10 | | - |
11 | | -#### Requirements |
12 | | -- **Ubuntu 20.04** |
13 | | -- **64-Bit OS** |
14 | | -- **Minimum 1GB RAM** *(2GB+ recommended)* |
15 | | -- **Cloudflare** *(free or paid)* |
16 | | -- **30 minutes of your time** |
17 | | - |
18 | | - |
19 | | -If you'd like to test EngineScript for yourself, just enter the command below into your favorite SSH client. This should be done on a fresh server with no current Nginx, PHP, or MySQL clients currently installed. |
20 | | - |
21 | | -### Install EngineScript |
22 | | -```shell |
23 | | -wget https://raw.githubusercontent.com/VisiStruct/EngineScript/master/setup.sh && chmod 0700 setup.sh | setup.sh |
24 | | -``` |
25 | | - |
26 | | ----------- |
27 | | - |
28 | | -#### Domain Creation |
29 | | -After EngineScript is fully installed, type `enginescript` or `es.menu` in console to bring up the EngineScript menu. Choose option 2 to create a new domain. |
30 | | - |
31 | | -Domain creation is almost entirely automated, requiring only a few lines entered by the user. During this automated domain creation process, we'll create a unique Nginx vhost file, create new MySQL database / user/ password, download the latest WordPress release, and assign the applicable data to your wp-config.php file within WordPress. |
32 | | - |
33 | | -#### Tuning MySQL |
34 | | -Our default settings are built to accommodate a VPS with 1GB RAM. However, you'll definitely want to adjust the values within php.ini and my.cnf if you're building on a server with more memory. |
35 | | - |
36 | | -As a reminder, you can locate your MySQL root login credentials in `/home/EngineScript/` |
37 | | - |
38 | | -**Run MySQLTuner:** |
39 | | -```shell |
40 | | -perl /usr/local/bin/mysqltuner/mysqltuner.pl |
41 | | -``` |
42 | | - |
43 | | -**Run Tuning-Primer:** |
44 | | -```shell |
45 | | -/usr/local/bin/tuning-primer/tuning-primer.sh |
46 | | -``` |
47 | | - |
48 | | -### EngineScript Information |
49 | | -#### EngineScript Location Reference |
50 | | -|Location |Usage | |
51 | | -|----------------|-------------------------------| |
52 | | -|**/etc/mysql** |MySQL (MariaDB) config | |
53 | | -|**/etc/nginx** |Nginx config | |
54 | | -|**/etc/php** |PHP config | |
55 | | -|**/etc/redis** |Redis config | |
56 | | -|**/home/EngineScript** |EngineScript user directories | |
57 | | -|**/usr/local/bin/enginescript** |EngineScript source | |
58 | | -|**/var/lib/mysql** |MySQL database | |
59 | | -|**/var/log** |Server logs | |
60 | | -|**/var/www/admin** |Admin Panel root | |
61 | | -|**/var/www/admin/enginescript** |Tools that may be accessed via your server's IP address | |
62 | | -|**/var/www/sites/yourdomain.com/html**|Root directory for your WordPress installation | |
63 | | -| | | |
64 | | - |
65 | | -#### EngineScript Commands |
66 | | - |
67 | | -|Command |Function | |
68 | | -|-------------------|-------------------------------| |
69 | | -|**`es.compress`** |Compresses /var/www/sites directories with Brotli and GZIP | |
70 | | -|**`es.menu`** |EngineScript menu | |
71 | | -|**`es.mysql`** |Prints MySQL root login credentials| |
72 | | -|**`es.restart`** |Restarts Nginx and PHP | |
73 | | -|**`es.update`** |Updates EngineScript, performs apt full-upgrade | |
74 | | -|**`es.virus`** |Virus scans /var/www/sites directories with ClamAV | |
75 | | -|**`ng.test`** |`nginx -t -c /etc/nginx/nginx.conf` | |
76 | | -|**`ng.stop`** |`ng.test && systemctl stop nginx` | |
77 | | -|**`ng.reload`** |`ng.test && systemctl reload nginx` | |
78 | | -| | | |
79 | | - |
80 | | -### Helpful Tutorials |
81 | | - |
82 | | -### Helpful Resources |
83 | | - |
84 | | -#### Security |
85 | | -***placeholder*** - https://www.owasp.org/index.php/OWASP_Secure_Headers_Project#tab=Headers |
86 | | -# https://scotthelme.co.uk/a-new-security-header-referrer-policy/ |
87 | | -# https://msdn.microsoft.com/en-us/library/ff955275(v=vs.85).aspx |
88 | | -# https://yoast.com/x-robots-tag-play/ |
89 | | -# Content-Security-Policy: https://developers.google.com/web/fundamentals/security/csp/ |
90 | | - |
91 | | -### Support EngineScript |
92 | | -Need a VPS? EngineScript recommends [Digital Ocean](https://m.do.co/c/e57cc8492285) |
93 | | - |
94 | | ----------- |
| 1 | +# EngineScript |
0 commit comments