EasyEngine是一个类似于CentminMod、VPSSIM等的自动化安装Web环境脚本,用于Ubuntu、Debian系统一键构建PHP Web环境。

EasyEngine基于Nginx、PHP、MySQL,没有Apache;包括但不限于PHP7,HHVM,PageSpeed,phpMyAdmin。

对于WordPress站点的支持尤其强大;且支持自动化创建基于Let’s Encrypt的SSL站点。

EasyEngine 安装

官方给出两行命令,一个用于一键安装EasyEngine,一个用于一键创建WordPress站点:

wget -qO ee rt.cx/ee && sudo bash ee # install easyengine
sudo ee site create example.com --wp # install wordpress on example.com

不过在具体的安装环境中,执行安装命令的时候有时候信息毫无反馈,主要是命令wget -qO ee rt.cx/ee使用失败,所以,安装EasyEngine的命令可以使用如下:

wget --no-check-certificate rt.cx/ee && sudo bash ee

EasyEngine 使用笔记

MySQL 密码

安装过程中自动生成的密码位于:

/etc/mysql/conf.d/my.cnf

phpMyAdmin 地址

ee stack install --phpmyadmin
https://example.com:22222/db/pma/

访问需要HTTP认证,用户名和密码的修改执行命令:ee secure --auth;另外端口是可以修改的:ee secure --port

使用基于 Let’s Encrypt 的SSL

ee site create example.com --html
ee site create example.com --php
ee site create example.com --mysql

可以在上述等命令的后面添加参数--letsencrypt例如:

ee site create example.com --wp --letsencrypt

ee site create example.com --letsencrypt,直接创建的命令好像没什么意思,之后是否可以选择添加静态网页环境、PHP环境等等在官方好像没有找到说明,如果不是一起创建,建议先创建站点,随后升级到SSL。

如果站点是用EasyEngine创建的,则可以使用如下命令升级:

ee site update example.com --letsencrypt

关闭:

ee site update example.com --letsencrypt=off

更新Let’s Encrypt证书:

ee site update example.com --letsencrypt=renew

自动更新证书(非minimal的系统自带Crontab,默认已设置):

crontab -l
0 12 * * * ee site update --le=renew --all 2> /dev/null # Renew letsencrypt SSL cert. Set by EasyEngine

--letsencrypt命令太长,下面是别名:

--le=on/off/renew

域名解析到IP,需要example.comwww.example.com,带www和不带www的,不论是二级域名还是三级域名,要不然会提示错误,这个我已测试对于EasyEngine来说是必需的!

不论续期成功与否,EasyEngine都会发送邮件(此邮件地址应该是安装过程中手动输入的那个),可能在安装Postfixee stack install --postfix之后才生效,目前这个我不确定。

目前来看,个人不建议短时间内将Let’s Encrypt用作生产环境。

用户和用户组

Nginx的用户为:www-data

然后修正目录的权限我想应该是:chown -R www-data:www-data /var/www/***

其他

一个功能强大、完善的自动化脚本,近期还会再折腾;更多其他关于EasyEngine (ee)笔记随后添加。