diff --git a/README.md b/README.md index bce687b..a9f1a0c 100644 --- a/README.md +++ b/README.md @@ -40,7 +40,7 @@ - **Easy to install** : One step automated installer with migration from EasyEngine v3 support - **Fast deployment** : Fast and automated WordPress, Nginx, PHP, MySQL & Redis installation - **Custom Nginx build** : Nginx 1.24.0 - TLS v1.3 Cloudflare HTTP/2 HPACK & Brotli support -- **Up-to-date** : PHP 7.2, 7.3, 7.4, 8.0, 8.1, 8.2 & 8.3 - MariaDB 10.11 LTS & Redis 7.0 +- **Up-to-date** : PHP 7.4, 8.0, 8.1, 8.2 & 8.3 - MariaDB 10.11 LTS & Redis 7.0 - **Secured** : Hardened WordPress security with strict Nginx location directives - **Powerful** : Optimized Nginx configurations with multiple cache backends support - **SSL** : Domain, Subdomain & Wildcard Let's Encrypt SSL certificates with DNS API support @@ -132,8 +132,6 @@ wo site create example.com --proxy=127.0.0.1:3000 # create example.com with ngi ### Switch between PHP versions ```bash -wo site update example.com --php72 # switch to PHP 7.2 -wo site update example.com --php73 # switch to PHP 7.3 wo site update example.com --php74 # switch to PHP 7.4 wo site update example.com --php80 # switch to PHP 8.0 wo site update example.com --php81 # switch to PHP 8.1 diff --git a/install b/install index 06a3274..2e72bbe 100755 --- a/install +++ b/install @@ -213,7 +213,7 @@ wo_install_dep() { build-essential curl gzip python3-pip python3-apt python3-venv gcc python3-dev sqlite3 git tar software-properties-common pigz \ gnupg2 cron ccze rsync apt-transport-https tree haveged ufw unattended-upgrades tzdata ntp zstd idn \ python3-distutils-extra libapt-pkg-dev bash-completion >/dev/null 2>&1 - curl -sL https://build.opensuse.org/projects/home:virtubox/public_key | apt-key add - + curl -fsSL https://build.opensuse.org/projects/home:virtubox/public_key | gpg --dearmor -o /usr/share/keyrings/wordops-archive-keyring.gpg else # install dependencies apt-get --option=Dpkg::options::=--force-confmiss --option=Dpkg::options::=--force-confold --assume-yes install \ @@ -221,9 +221,10 @@ wo_install_dep() { software-properties-common pigz apt-transport-https gnupg2 cron ccze rsync tree haveged ufw unattended-upgrades tzdata ntp zstd idn \ python3-distutils-extra libapt-pkg-dev bash-completion >/dev/null 2>&1 # add php repository gpg key - [ -d /etc/apt/trusted.gpg.d ] && { wget -qO /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg; } + curl -sSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb + dpkg -i /tmp/debsuryorg-archive-keyring.deb && rm -f /tmp/debsuryorg-archive-keyring.deb # add nginx repository gpg key - curl -sL https://build.opensuse.org/projects/home:virtubox/public_key | apt-key add - + curl -fsSL https://build.opensuse.org/projects/home:virtubox/public_key | gpg --dearmor -o /usr/share/keyrings/wordops-archive-keyring.gpg fi locale-gen en # enable unattended upgades diff --git a/wo/cli/plugins/info.py b/wo/cli/plugins/info.py index 749b3c8..de4009e 100644 --- a/wo/cli/plugins/info.py +++ b/wo/cli/plugins/info.py @@ -153,93 +153,6 @@ class WOInfoController(CementBaseController): debug_xdebug_profiler_enable_trigger=debug_xdebug) self.app.render((data), 'info_php.mustache') - @expose(hide=True) - def info_php73(self): - """Display PHP information""" - version = os.popen("/usr/bin/php7.3 -v 2>/dev/null | " - "head -n1 | cut -d' ' -f2 |" - " cut -d'+' -f1 | tr -d '\n'").read - config = configparser.ConfigParser() - config.read('/etc/php/7.3/fpm/php.ini') - expose_php = config['PHP']['expose_php'] - memory_limit = config['PHP']['memory_limit'] - post_max_size = config['PHP']['post_max_size'] - upload_max_filesize = config['PHP']['upload_max_filesize'] - max_execution_time = config['PHP']['max_execution_time'] - - if os.path.exists('/etc/php/7.3/fpm/pool.d/www.conf'): - config.read('/etc/php/7.3/fpm/pool.d/www.conf') - else: - Log.error(self, 'php-fpm pool config not found') - if config.has_section('www'): - wconfig = config['www'] - elif config.has_section('www-php73'): - wconfig = config['www-php73'] - else: - Log.error(self, 'Unable to parse configuration') - www_listen = wconfig['listen'] - www_ping_path = wconfig['ping.path'] - www_pm_status_path = wconfig['pm.status_path'] - www_pm = wconfig['pm'] - www_pm_max_requests = wconfig['pm.max_requests'] - www_pm_max_children = wconfig['pm.max_children'] - www_pm_start_servers = wconfig['pm.start_servers'] - www_pm_min_spare_servers = wconfig['pm.min_spare_servers'] - www_pm_max_spare_servers = wconfig['pm.max_spare_servers'] - www_request_terminate_time = (wconfig - ['request_terminate_timeout']) - try: - www_xdebug = (wconfig - ['php_admin_flag[xdebug.profiler_enable' - '_trigger]']) - except Exception as e: - Log.debug(self, "{0}".format(e)) - www_xdebug = 'off' - - config.read('/etc/php/7.3/fpm/pool.d/debug.conf') - debug_listen = config['debug']['listen'] - debug_ping_path = config['debug']['ping.path'] - debug_pm_status_path = config['debug']['pm.status_path'] - debug_pm = config['debug']['pm'] - debug_pm_max_requests = config['debug']['pm.max_requests'] - debug_pm_max_children = config['debug']['pm.max_children'] - debug_pm_start_servers = config['debug']['pm.start_servers'] - debug_pm_min_spare_servers = config['debug']['pm.min_spare_servers'] - debug_pm_max_spare_servers = config['debug']['pm.max_spare_servers'] - debug_request_terminate = (config['debug'] - ['request_terminate_timeout']) - try: - debug_xdebug = (config['debug']['php_admin_flag[xdebug.profiler_' - 'enable_trigger]']) - except Exception as e: - Log.debug(self, "{0}".format(e)) - debug_xdebug = 'off' - - data = dict(version=version, expose_php=expose_php, - memory_limit=memory_limit, post_max_size=post_max_size, - upload_max_filesize=upload_max_filesize, - max_execution_time=max_execution_time, - www_listen=www_listen, www_ping_path=www_ping_path, - www_pm_status_path=www_pm_status_path, www_pm=www_pm, - www_pm_max_requests=www_pm_max_requests, - www_pm_max_children=www_pm_max_children, - www_pm_start_servers=www_pm_start_servers, - www_pm_min_spare_servers=www_pm_min_spare_servers, - www_pm_max_spare_servers=www_pm_max_spare_servers, - www_request_terminate_timeout=www_request_terminate_time, - www_xdebug_profiler_enable_trigger=www_xdebug, - debug_listen=debug_listen, debug_ping_path=debug_ping_path, - debug_pm_status_path=debug_pm_status_path, - debug_pm=debug_pm, - debug_pm_max_requests=debug_pm_max_requests, - debug_pm_max_children=debug_pm_max_children, - debug_pm_start_servers=debug_pm_start_servers, - debug_pm_min_spare_servers=debug_pm_min_spare_servers, - debug_pm_max_spare_servers=debug_pm_max_spare_servers, - debug_request_terminate_timeout=debug_request_terminate, - debug_xdebug_profiler_enable_trigger=debug_xdebug) - self.app.render((data), 'info_php.mustache') - @expose(hide=True) def info_php74(self): """Display PHP information""" @@ -714,14 +627,10 @@ class WOInfoController(CementBaseController): """default function for info""" pargs = self.app.pargs if (not pargs.nginx and not pargs.php and - not pargs.mysql and not pargs.php73 and - not pargs.php74 and not pargs.php80 and - not pargs.php81 and not pargs.php82) and not (pargs.php83): + not pargs.mysql and not pargs.php74 and not pargs.php80 and + not pargs.php81 and not pargs.php82 and not pargs.php83): pargs.nginx = True - pargs.php = True pargs.mysql = True - if WOAptGet.is_installed(self, 'php7.3-fpm'): - pargs.php73 = True if WOAptGet.is_installed(self, 'php7.4-fpm'): pargs.php74 = True if WOAptGet.is_installed(self, 'php8.0-fpm'): @@ -740,18 +649,6 @@ class WOInfoController(CementBaseController): else: self.info_nginx() - if pargs.php: - if WOAptGet.is_installed(self, 'php7.2-fpm'): - self.info_php() - else: - Log.info(self, "PHP 7.2 is not installed") - - if pargs.php73: - if WOAptGet.is_installed(self, 'php7.3-fpm'): - self.info_php73() - else: - Log.info(self, "PHP 7.3 is not installed") - if pargs.php74: if WOAptGet.is_installed(self, 'php7.4-fpm'): self.info_php74()