Skip to content

Commit 3a26fc5

Browse files
authored
Updates
1 parent a652672 commit 3a26fc5

11 files changed

Lines changed: 1176 additions & 1476 deletions

File tree

CHANGELOG.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,21 @@ All notable changes to EngineScript will be documented in this file.
44

55
Changes are organized by date, with the most recent changes listed first.
66

7+
## 2025-10-10
8+
9+
### 📝 DOCUMENTATION IMPROVEMENTS
10+
11+
- **Enhanced Readability**: Improved overall document structure and formatting consistency
12+
13+
### 🛠️ CODE ORGANIZATION
14+
15+
- **Maintainability**: Enhanced code organization following project style standards
16+
17+
### ⚙️ CONFIGURATION ENHANCEMENTS
18+
19+
- **Static Files Cache Control**: Enhanced cache control headers for static assets
20+
- **Plugin Installation Options**: Added granular control over WordPress plugin installation
21+
722
## 2025-10-02
823

924
### 🖥️ DIGITALOCEAN REMOTE CONSOLE SUPPORT

README.md

Lines changed: 102 additions & 111 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ EngineScript is meant to be run as the root user on a fresh VPS. Setup will remo
3737
### Step 1 - Initial Install
3838

3939
Run the following command:
40+
4041
```shell
4142
bash <(curl -s https://raw.githubusercontent.com/EngineScript/EngineScript/master/setup.sh)
4243
```
@@ -46,6 +47,7 @@ bash <(curl -s https://raw.githubusercontent.com/EngineScript/EngineScript/maste
4647
After the initial setup script has run, you'll need to alter the install options file. Fill this out completely, making sure to change all variables that say `PLACEHOLDER`.
4748

4849
Run the following command:
50+
4951
```shell
5052
es.config
5153
```
@@ -55,6 +57,7 @@ es.config
5557
Once you've filled out the configuration file with your personal settings, continue with the main installation process.
5658

5759
Run the following command:
60+
5861
```shell
5962
es.install
6063
```
@@ -85,12 +88,12 @@ Although we do our best to automate this process, there are a few settings that
8588

8689
For Cloudflare to support compression from origin, the following features must be disabled:
8790

88-
* Email Obfuscation
89-
* Rocket Loader
90-
* Server Side Excludes (SSE)
91-
* Mirage
92-
* HTML Minification (JavaScript and CSS can remain enabled)
93-
* Automatic HTTPS Rewrites
91+
- Email Obfuscation
92+
- Rocket Loader
93+
- Server Side Excludes (SSE)
94+
- Mirage
95+
- HTML Minification (JavaScript and CSS can remain enabled)
96+
- Automatic HTTPS Rewrites
9497

9598
For more information, see [This is Brotli from Origin](https://blog.cloudflare.com/this-is-brotli-from-origin/).
9699

@@ -113,7 +116,7 @@ We've also developed a basic plugin that disables some bloat from the default Wo
113116

114117
----------
115118

116-
## Sponsors:
119+
## Sponsors
117120

118121
EngineScript development is supported by:
119122

@@ -127,46 +130,48 @@ Want to support EngineScript? [Sponsor this project](https://github.com/sponsors
127130

128131
|Location|Usage|
129132
|-|-|
130-
|**/etc/mysql** |MySQL (MariaDB) config |
131-
|**/etc/nginx** |Nginx config |
132-
|**/etc/php** |PHP config |
133-
|**/etc/redis** |Redis config |
134-
|**/home/EngineScript** |EngineScript user directories |
135-
|**/usr/local/bin/enginescript** |EngineScript source |
136-
|**/var/lib/mysql** |MySQL database |
137-
|**/var/log** |Server logs |
138-
|**/var/www/admin/enginescript** |Tools that may be accessed via server IP address or admin.YOURDOMAIN subdomain |
139-
|**/var/www/sites/*YOURDOMAIN*/html** |Root directory for your WordPress installation |
133+
|**/etc/mysql** |MySQL (MariaDB) config|
134+
|**/etc/nginx** |Nginx config|
135+
|**/etc/php** |PHP config|
136+
|**/etc/redis** |Redis config|
137+
|**/home/EngineScript** |EngineScript user directories|
138+
|**/usr/local/bin/enginescript** |EngineScript source|
139+
|**/var/lib/mysql** |MySQL database|
140+
|**/var/log** |Server logs|
141+
|**/var/www/admin/enginescript** |Tools that may be accessed via server IP address or admin.YOURDOMAIN subdomain|
142+
|**/var/www/sites/*YOURDOMAIN*/html**|Root directory for your WordPress installation|
140143

141144
### EngineScript Commands
142145

143146
|Command|Function|
144147
|-|-|
145-
|**`es.backup`** |Runs the backup script to backup all domains locally and *optionally* in the cloud |
146-
|**`es.cache`** |Clear FastCGI Cache, OpCache, and Redis *(server-wide)* |
147-
|**`es.config`** |Opens the configuration file in Nano |
148-
|**`es.debug`** |Displays debug information for EngineScript |
149-
|**`es.help`** |Displays EngineScript commands and locations |
150-
|**`es.images`** |Losslessly compress all images in the WordPress /uploads directory *(server-wide)* |
151-
|**`es.info`** |Displays server information |
152-
|**`es.install`** |Runs the main EngineScript installation script |
153-
|**`es.menu`** |EngineScript menu |
154-
|**`es.permissions`** |Resets the permissions of all files in the WordPress directory *(server-wide)* |
155-
|**`es.restart`** |Restart Nginx and PHP |
156-
|**`es.sites`** |Lists all WordPress sites installed on the server with status information |
157-
|**`es.update`** |Update EngineScript |
158-
|**`es.variables`** |Opens the variable file in Nano. This file resets when EngineScript is updated |
148+
|**`es.backup`** |Runs the backup script to backup all domains locally and *optionally* in the cloud|
149+
|**`es.cache`** |Clear FastCGI Cache, OpCache, and Redis *(server-wide)*|
150+
|**`es.config`** |Opens the configuration file in Nano|
151+
|**`es.debug`** |Displays debug information for EngineScript|
152+
|**`es.help`** |Displays EngineScript commands and locations|
153+
|**`es.images`** |Losslessly compress all images in the WordPress /uploads directory *(server-wide)*|
154+
|**`es.info`** |Displays server information|
155+
|**`es.install`** |Runs the main EngineScript installation script|
156+
|**`es.menu`** |EngineScript menu|
157+
|**`es.permissions`**|Resets the permissions of all files in the WordPress directory *(server-wide)*|
158+
|**`es.restart`** |Restart Nginx and PHP|
159+
|**`es.sites`** |Lists all WordPress sites installed on the server with status information|
160+
|**`es.update`** |Update EngineScript|
161+
|**`es.variables`** |Opens the variable file in Nano. This file resets when EngineScript is updated|
159162

160163
### Admin Control Panel Features
161164

162165
EngineScript includes a comprehensive web-based admin control panel accessible at `https://your-server-ip/admin` or `https://admin.yourdomain.com`. The control panel provides:
163166

164167
#### Server Monitoring
168+
165169
- Real-time server statistics (CPU, RAM, disk usage)
166170
- Service status monitoring (Nginx, PHP, MariaDB, Redis)
167171
- System activity and security event logging
168172

169173
#### Uptime Monitoring
174+
170175
EngineScript integrates with **Uptime Robot** to monitor your WordPress websites for uptime and performance:
171176

172177
- **Real-time uptime status** for all monitored websites
@@ -179,110 +184,96 @@ EngineScript integrates with **Uptime Robot** to monitor your WordPress websites
179184
1. Create a free account at [UptimeRobot.com](https://uptimerobot.com/)
180185
2. Generate an API key in Settings > API Settings (Main API Key)
181186
3. Configure the API key on your server:
187+
182188
```bash
183189
sudo nano /etc/enginescript/uptimerobot.conf
184190
```
191+
185192
4. Add your API key:
186-
```
193+
194+
```text
187195
api_key=your_main_api_key_here
188196
```
197+
189198
5. Set proper permissions:
199+
190200
```bash
191201
sudo chmod 600 /etc/enginescript/uptimerobot.conf
192202
```
193203

194204
Once configured, your uptime monitoring data will automatically appear in the admin control panel.
195205

196206
#### File Management
207+
197208
- **Tiny File Manager** integration for secure web-based file management
198209
- Direct access to WordPress files and directories
199210
- Safe file editing and management interface
200211

201212
#### Tools & Utilities
213+
202214
- Quick access to common server management tasks
203215
- One-click service restarts and cache clearing
204216
- Server information and diagnostics
205217

206-
### Software EngineScript Utilizes:
218+
### Software EngineScript Utilizes
207219

208220
|Software|Version|Source|
209221
|-|-|-|
210-
| **Certificate Management** |
211-
|ACME.sh|Latest|https://get.acme.sh |
212-
||
213-
||
214-
|**Web Server**|
215-
|NGINX MAINLINE|1.29.1|https://nginx.org/en/download.html|
216-
|NGINX CACHE PURGE|2.5.3|https://github.com/nginx-modules/ngx_cache_purge|
217-
|NGINX HEADERS MORE|0.39|https://github.com/openresty/headers-more-nginx-module|
218-
|NGINX PATCH: Dynamic TLS Records|Latest|https://github.com/kn007/patch|
219-
|OPENSSL|3.5.2|https://www.openssl.org/source/|
220-
|PCRE2|10.46|https://github.com/PCRE2Project/pcre2/releases|
221-
|ZLIB-Cloudflare|Latest|https://github.com/cloudflare/zlib|
222-
||
223-
||
224-
|**Script Processing**|
225-
|PHP|8.3|https://launchpad.net/~ondrej/+archive/ubuntu/php|
226-
||
227-
||
228-
|**MySQL Database**|
229-
|MARIADB|11.8.3|https://mariadb.org/download/|
230-
||
231-
||
232-
|**Database Management**|
222+
|**Certificate Management**|||
223+
|ACME.sh|Latest|<https://get.acme.sh>|
224+
|**Web Server**|||
225+
|NGINX MAINLINE|1.29.1|<https://nginx.org/en/download.html>|
226+
|NGINX CACHE PURGE|2.5.3|<https://github.com/nginx-modules/ngx_cache_purge>|
227+
|NGINX HEADERS MORE|0.39|<https://github.com/openresty/headers-more-nginx-module>|
228+
|NGINX PATCH: Dynamic TLS Records|Latest|<https://github.com/kn007/patch>|
229+
|OPENSSL|3.5.2|<https://www.openssl.org/source/>|
230+
|PCRE2|10.46|<https://github.com/PCRE2Project/pcre2/releases>|
231+
|ZLIB-Cloudflare|Latest|<https://github.com/cloudflare/zlib>|
232+
|**Script Processing**|||
233+
|PHP|8.3|<https://launchpad.net/~ondrej/+archive/ubuntu/php>|
234+
|**MySQL Database**|||
235+
|MARIADB|11.8.3|<https://mariadb.org/download/>|
236+
|**Database Management**|||
233237
|ADMINER|||
234-
|PHPMYADMIN|5.2.2|https://www.phpmyadmin.net/downloads/|
235-
||
236-
||
237-
|**Admin Control Panel**|
238-
|Chart.js|4.5.0|https://github.com/chartjs/Chart.js|
239-
|Font Awesome|7.0.1|https://github.com/FortAwesome/Font-Awesome|
240-
|TinyFileManager|2.6|https://github.com/prasathmani/tinyfilemanager|
241-
||
242-
||
243-
|**Object Cache**|
244-
|REDIS|Latest|https://redis.io/|
245-
||
246-
||
247-
|**Content Management System (CMS)**|
248-
|WORDPRESS | Latest |https://wordpress.org|
249-
|WP-CLI | Latest |https://github.com/wp-cli/wp-cli|
250-
|WP-CLI: doctor-command | Latest |https://github.com/wp-cli/doctor-command|
251-
|WP-CLI: WP Launch Check | Latest |https://github.com/pantheon-systems/wp_launch_check|
252-
|PLUGIN: App for Cloudflare| Latest |https://wordpress.org/plugins/app-for-cf/|
253-
|PLUGIN: EngineScript: Simple Site Exporter|1.9.0| [https://github.com/EngineScript/Simple-WP-Site-Exporter](https://github.com/EngineScript/Simple-WP-Site-Exporter) |
254-
|PLUGIN: EngineScript: Simple WP Optimizer|1.7.0| [https://github.com/EngineScript/Simple-WP-Optimizer](https://github.com/EngineScript/Simple-WP-Optimizer) |
255-
|PLUGIN: MariaDB Health Checks *(recommended)* | Latest |https://wordpress.org/plugins/mariadb-health-checks/|
256-
|PLUGIN: Nginx Helper *(required)* | Latest |https://wordpress.org/plugins/nginx-helper/|
257-
|PLUGIN: Performance Lab *(downloaded)* | Latest |https://wordpress.org/plugins/performance-lab/|
258-
|PLUGIN: PHP Compatibility Checker| Latest |https://wordpress.org/plugins/php-compatibility-checker/|
259-
|PLUGIN: Redis Object Cache *(recommended)*| Latest |https://wordpress.org/plugins/redis-cache/|
260-
|PLUGIN: The SEO Framework *(recommended)*| Latest |https://wordpress.org/plugins/autodescription/|
261-
|PLUGIN: Theme Check| Latest |https://wordpress.org/plugins/theme-check/|
262-
|PLUGIN: WP Crontrol| Latest |https://wordpress.org/plugins/wp-crontrol/|
263-
|PLUGIN: WP Mail SMTP| Latest |https://wordpress.org/plugins/wp-mail-smtp/|
264-
|PLUGIN: WP OPcache *(recommended)*| Latest | https://wordpress.org/plugins/flush-opcache/|
265-
||
266-
||
267-
|**Security**|
268-
|MALDETECT|Latest|https://www.rfxn.com/projects/linux-malware-detect/|
269-
|PHP-MALWARE-FINDER|Latest|https://github.com/nbs-system/php-malware-finder|
270-
|UNCOMPLICATED FIREWALL (UFW) || Bundled with Ubuntu|
271-
|WORDFENCE CLI||https://github.com/wordfence/wordfence-cli/releases|
272-
|WPSCAN|Latest|https://wpscan.com/|
273-
||
274-
||
275-
|**Development Tools**|
276-
|PNGOUT|20200115|http://www.jonof.id.au/kenutils.html|
277-
|ZIMAGEOPTIMIZER|Latest|https://github.com/zevilz/zImageOptimizer|
278-
||
279-
||
280-
|**Backup Software**|
281-
|LOCAL BACKUPS|| Bash Scripts|
282-
|AMAZON AWS CLI|Latest|https://aws.amazon.com/cli/|
283-
||
284-
||
285-
|**Misc Supplemental Software**|
286-
|LIBURING|2.12|https://github.com/axboe/liburing|
287-
|MYSQLTUNER|Latest|https://github.com/major/MySQLTuner-perl|
288-
|ZLIB|1.3.1|https://github.com/madler/zlib|
238+
|PHPMYADMIN|5.2.2|<https://www.phpmyadmin.net/downloads/>|
239+
|**Admin Control Panel**|||
240+
|Chart.js|4.5.0|<https://github.com/chartjs/Chart.js>|
241+
|Font Awesome|7.0.1|<https://github.com/FortAwesome/Font-Awesome>|
242+
|TinyFileManager|2.6|<https://github.com/prasathmani/tinyfilemanager>|
243+
|**Object Cache**|||
244+
|REDIS|Latest|<https://redis.io/>|
245+
|**Content Management System (CMS)**|||
246+
|WORDPRESS||<https://wordpress.org>|
247+
|WP-CLI||<https://github.com/wp-cli/wp-cli>|
248+
|WP-CLI: doctor-command||<https://github.com/wp-cli/doctor-command>|
249+
|WP-CLI: WP Launch Check||<https://github.com/pantheon-systems/wp_launch_check>|
250+
|PLUGIN: App for Cloudflare||<https://wordpress.org/plugins/app-for-cf/>|
251+
|PLUGIN: Action Scheduler||<https://wordpress.org/plugins/action-scheduler/>|
252+
|PLUGIN: EngineScript: Simple Site Exporter||[https://github.com/EngineScript/Simple-WP-Site-Exporter](https://github.com/EngineScript/Simple-WP-Site-Exporter)|
253+
|PLUGIN: EngineScript: Simple WP Optimizer|1.7.0|[https://github.com/EngineScript/Simple-WP-Optimizer](https://github.com/EngineScript/Simple-WP-Optimizer)|
254+
|PLUGIN: MariaDB Health Checks *(recommended)*||<https://wordpress.org/plugins/mariadb-health-checks/>|
255+
|PLUGIN: Nginx Helper *(required)*||<https://wordpress.org/plugins/nginx-helper/>|
256+
|PLUGIN: Performance Lab||<https://wordpress.org/plugins/performance-lab/>|
257+
|PLUGIN: PHP Compatibility Checker|Latest|<https://wordpress.org/plugins/php-compatibility-checker/>|
258+
|PLUGIN: Redis Object Cache *(recommended)*||<https://wordpress.org/plugins/redis-cache/>|
259+
|PLUGIN: The SEO Framework *(recommended)*||<https://wordpress.org/plugins/autodescription/>|
260+
|PLUGIN: Theme Check||<https://wordpress.org/plugins/theme-check/>|
261+
|PLUGIN: WP Crontrol||<https://wordpress.org/plugins/wp-crontrol/>|
262+
|PLUGIN: WP Mail SMTP||<https://wordpress.org/plugins/wp-mail-smtp/>|
263+
|PLUGIN: WP OPcache *(recommended)*||<https://wordpress.org/plugins/flush-opcache/>|
264+
|**Security**|||
265+
|MALDETECT|Latest|<https://www.rfxn.com/projects/linux-malware-detect/>|
266+
|PHP-MALWARE-FINDER|Latest|<https://github.com/nbs-system/php-malware-finder>|
267+
|UNCOMPLICATED FIREWALL (UFW)||Bundled with Ubuntu|
268+
|WORDFENCE CLI||<https://github.com/wordfence/wordfence-cli/releases>|
269+
|WPSCAN|Latest|<https://wpscan.com/>|
270+
|**Development Tools**|||
271+
|PNGOUT|20200115|<http://www.jonof.id.au/kenutils.html>|
272+
|ZIMAGEOPTIMIZER|Latest|<https://github.com/zevilz/zImageOptimizer>|
273+
|**Backup Software**|||
274+
|LOCAL BACKUPS||Bash Scripts|
275+
|AMAZON AWS CLI|Latest|<https://aws.amazon.com/cli/>|
276+
|**Misc Supplemental Software**|||
277+
|LIBURING|2.12|<https://github.com/axboe/liburing>|
278+
|MYSQLTUNER|Latest|<https://github.com/major/MySQLTuner-perl>|
279+
|ZLIB|1.3.1|<https://github.com/madler/zlib>|

config/etc/nginx/globals/static-files.conf

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ location ~* \.(?:3gp|7z|a(ac|png|s[fx]|vi(fs?)?)|b(mp|r|z2)|c(ast|ur)|do[ct][mx]
2020
# Web Fonts
2121
location ~* \.(?:eot|otf|svgz?|tt[cf]|woff2?)$ {
2222
access_log /dev/null;
23+
log_not_found off;
2324
add_header Cache-Control "public, must-revalidate, proxy-revalidate, immutable, max-age=2592000, stale-while-revalidate=86400, stale-if-error=604800" always;
2425
#expires max;
2526
}

config/etc/nginx/nginx.conf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,9 +99,9 @@ http {
9999
log_subrequest off;
100100
map_hash_bucket_size SEDHASHBUCKETSIZE;
101101
map_hash_max_size SEDHASHMAXSIZE;
102-
open_file_cache max=14556 inactive=60s;
102+
open_file_cache max=4556 inactive=180s;
103103
open_file_cache_errors on;
104-
open_file_cache_min_uses 2;
104+
open_file_cache_min_uses 3;
105105
open_file_cache_valid 120s;
106106
open_log_file_cache max=10000 inactive=30s min_uses=2;
107107
output_buffers 2 32k;

config/home/enginescript-install-options.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,13 @@ AUTOMATIC_LOSSLESS_IMAGE_OPTIMIZATION=0
9898
# Note: This does NOT affect other recommended plugins (Nginx Helper, Redis, etc.)
9999
INSTALL_ENGINESCRIPT_PLUGINS=1
100100

101+
# Install Extra WordPress Plugins
102+
# When enabled, EngineScript will install additional recommended WordPress plugins during site creation:
103+
# action-scheduler, app-for-cf, autodescription, performance-lab, php-compatibility-checker, theme-check, wp-crontrol, wp-mail-smtp
104+
# These are optional but recommended for enhanced functionality, debugging, and development
105+
# Note: Core plugins (flush-opcache, mariadb-health-checks, nginx-helper, redis-cache) are always installed
106+
INSTALL_EXTRA_WP_PLUGINS=1
107+
101108
## Show EngineScript Header ##
102109
# Enable if you want to show off that your server is running EngineScript.
103110
# Recommended: 0

0 commit comments

Comments
 (0)