diff --git a/README.md b/README.md index cdf9942..bba3a22 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ Webinoly provides a set of tools and commands that facilitate the web server adm - Unique commands to create, delete, disable sites. - Free SSL certificates for your sites with Let’s Encrypt and automatic server configuration. - HTTP/2 dramatically increase the speed of serving your content. -- PHP v7.2 and support for previous versions if necessary (5.6, 7.0 and 7.1). +- PHP v7.2 and support for previous versions if necessary (5.6, 7.0 and 7.1) and the newest 7.3 (Release Candidate). - FastCgi Cache and Redis Object Cache for your WordPress sites. - Get an A+ grade on [Qualys (SSL Labs) Test](https://www.ssllabs.com/ssltest/). - Log viewer in real time. diff --git a/lib/install b/lib/install index cccd44b..722af07 100644 --- a/lib/install +++ b/lib/install @@ -3,7 +3,7 @@ source /opt/webinoly/lib/general app_version() { - local app_ver="1.6.0" + local app_ver="1.6.1-beta" echo $app_ver } svr_version() { @@ -205,7 +205,7 @@ nginx_install() { php_install() { api-events_update ip1 - if [[ -n $(conf_read php-ver) && ($(conf_read php-ver) == "7.2" || $(conf_read php-ver) == "7.1" || $(conf_read php-ver) == "7.0" || $(conf_read php-ver) == "5.6") ]]; then + if [[ -n $(conf_read php-ver) && ($(conf_read php-ver) == "7.3" || $(conf_read php-ver) == "7.2" || $(conf_read php-ver) == "7.1" || $(conf_read php-ver) == "7.0" || $(conf_read php-ver) == "5.6") ]]; then echo "${gre}Default PHP version '$(conf_read php-ver)' detected!${end}" else # Default PHP version @@ -214,7 +214,7 @@ php_install() { ver=$(conf_read php-ver) # Multi-PHP - if [[ $(conf_read multi-php) == "true" && -n $1 && $1 =~ ^(5.6|7.0|7.1|7.2)$ && $(conf_read php) == "true" && $1 != $ver ]]; then + if [[ $(conf_read multi-php) == "true" && -n $1 && $1 =~ ^(5.6|7.0|7.1|7.2|7.3)$ && $(conf_read php) == "true" && $1 != $ver ]]; then ver="$1" echo "${gre}Multi-PHP version is enabled. PHP '$ver' will be installed!${end}" elif [[ $(conf_read multi-php) != "true" && -n $1 ]]; then @@ -238,7 +238,7 @@ php_install() { # mcrypt deprecated in 7.2 sudo apt-get -y install php${ver}-mcrypt fi - if [[ -n $ver && ($ver == "7.2" || $ver == "7.1" || $ver == "7.0") ]]; then + if [[ -n $ver && ($ver == "7.3" || $ver == "7.2" || $ver == "7.1" || $ver == "7.0") ]]; then # xdebug deprecated in 5.6 sudo apt-get -y install php-xdebug fi @@ -364,10 +364,11 @@ php_optim() { sudo sed -i '/ping.path =/c\ping.path = /ping' /etc/php/$ver/fpm/pool.d/www.conf if [[ $(conf_read multi-php) == "true" ]]; then - [[ $ver == 7.2 ]] && sudo sed -i '/listen = /c\listen = 127.0.0.1:9000' /etc/php/$ver/fpm/pool.d/www.conf - [[ $ver == 7.1 ]] && sudo sed -i '/listen = /c\listen = 127.0.0.1:9002' /etc/php/$ver/fpm/pool.d/www.conf - [[ $ver == 7.0 ]] && sudo sed -i '/listen = /c\listen = 127.0.0.1:9004' /etc/php/$ver/fpm/pool.d/www.conf - [[ $ver == 5.6 ]] && sudo sed -i '/listen = /c\listen = 127.0.0.1:9006' /etc/php/$ver/fpm/pool.d/www.conf + [[ $ver == 7.3 ]] && sudo sed -i '/listen = /c\listen = 127.0.0.1:9000' /etc/php/$ver/fpm/pool.d/www.conf + [[ $ver == 7.2 ]] && sudo sed -i '/listen = /c\listen = 127.0.0.1:9002' /etc/php/$ver/fpm/pool.d/www.conf + [[ $ver == 7.1 ]] && sudo sed -i '/listen = /c\listen = 127.0.0.1:9004' /etc/php/$ver/fpm/pool.d/www.conf + [[ $ver == 7.0 ]] && sudo sed -i '/listen = /c\listen = 127.0.0.1:9006' /etc/php/$ver/fpm/pool.d/www.conf + [[ $ver == 5.6 ]] && sudo sed -i '/listen = /c\listen = 127.0.0.1:9008' /etc/php/$ver/fpm/pool.d/www.conf else sudo sed -i '/listen = /c\listen = 127.0.0.1:9000' /etc/php/$ver/fpm/pool.d/www.conf fi @@ -380,15 +381,16 @@ php_optim() { sudo sed -i '/request_slowlog_timeout =/c\request_slowlog_timeout = 10s' /etc/php/$ver/fpm/pool.d/debug.conf if [[ $(conf_read multi-php) == "true" ]]; then - [[ $ver == 7.2 ]] && sudo sed -i '/listen = /c\listen = 127.0.0.1:9001' /etc/php/$ver/fpm/pool.d/debug.conf - [[ $ver == 7.1 ]] && sudo sed -i '/listen = /c\listen = 127.0.0.1:9003' /etc/php/$ver/fpm/pool.d/debug.conf - [[ $ver == 7.0 ]] && sudo sed -i '/listen = /c\listen = 127.0.0.1:9005' /etc/php/$ver/fpm/pool.d/debug.conf - [[ $ver == 5.6 ]] && sudo sed -i '/listen = /c\listen = 127.0.0.1:9007' /etc/php/$ver/fpm/pool.d/debug.conf + [[ $ver == 7.3 ]] && sudo sed -i '/listen = /c\listen = 127.0.0.1:9001' /etc/php/$ver/fpm/pool.d/debug.conf + [[ $ver == 7.2 ]] && sudo sed -i '/listen = /c\listen = 127.0.0.1:9003' /etc/php/$ver/fpm/pool.d/debug.conf + [[ $ver == 7.1 ]] && sudo sed -i '/listen = /c\listen = 127.0.0.1:9005' /etc/php/$ver/fpm/pool.d/debug.conf + [[ $ver == 7.0 ]] && sudo sed -i '/listen = /c\listen = 127.0.0.1:9007' /etc/php/$ver/fpm/pool.d/debug.conf + [[ $ver == 5.6 ]] && sudo sed -i '/listen = /c\listen = 127.0.0.1:9009' /etc/php/$ver/fpm/pool.d/debug.conf else sudo sed -i '/listen = /c\listen = 127.0.0.1:9001' /etc/php/$ver/fpm/pool.d/debug.conf fi - if [[ -n $ver && ($ver == "7.2" || $ver == "7.1" || $ver == "7.0") ]]; then + if [[ -n $ver && ($ver == "7.3" || $ver == "7.2" || $ver == "7.1" || $ver == "7.0") ]]; then # xdebug deprecated in 5.6 sudo echo 'php_admin_flag[xdebug.profiler_enable] = off' >> /etc/php/$ver/fpm/pool.d/debug.conf sudo echo 'php_admin_flag[xdebug.profiler_enable_trigger] = on' >> /etc/php/$ver/fpm/pool.d/debug.conf @@ -479,7 +481,7 @@ php_tool() { mysql_tool() { api-events_update im5 sudo mkdir /var/www/$(conf_read tools-port)/htdocs/pma - sudo wget --timeout=15 -qrO /var/www/$(conf_read tools-port)/htdocs/pma.tar.xz https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.xz + sudo wget --timeout=15 -t 1 -qrO /var/www/$(conf_read tools-port)/htdocs/pma.tar.xz https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.xz sudo tar -xf /var/www/$(conf_read tools-port)/htdocs/pma.tar.xz -C /var/www/$(conf_read tools-port)/htdocs/pma sudo mv /var/www/$(conf_read tools-port)/htdocs/pma/phpMyAdmin-*-all-languages/* /var/www/$(conf_read tools-port)/htdocs/pma/ sudo rm -rf /var/www/$(conf_read tools-port)/htdocs/pma/phpMyAdmin-*-all-languages diff --git a/lib/sites b/lib/sites index 21eecb3..5e36516 100644 --- a/lib/sites +++ b/lib/sites @@ -9,7 +9,7 @@ source /opt/webinoly/lib/general wp_cache_plugins() { if [[ ! -d /var/www/$domain/htdocs/wp-content/plugins/nginx-helper ]]; then # Download Nginx Helper Plugin - sudo wget --timeout=15 -qrO /var/www/$domain/htdocs/nginx-helper-plugin.zip https://downloads.wordpress.org/plugin/nginx-helper.latest-stable.zip + sudo wget --timeout=15 -t 1 -qrO /var/www/$domain/htdocs/nginx-helper-plugin.zip https://downloads.wordpress.org/plugin/nginx-helper.latest-stable.zip sudo unzip -qq /var/www/$domain/htdocs/nginx-helper-plugin.zip -d /var/www/$domain/htdocs/wp-content/plugins/ sudo rm /var/www/$domain/htdocs/nginx-helper-plugin.zip echo "" @@ -26,7 +26,7 @@ wp_cache_plugins() { if [[ ! -d /var/www/$domain/htdocs/wp-content/plugins/redis-cache ]]; then # Download Redis Object Cache Plugin - sudo wget --timeout=15 -qrO /var/www/$domain/htdocs/redis-cache-plugin.zip https://downloads.wordpress.org/plugin/redis-cache.latest-stable.zip + sudo wget --timeout=15 -t 1 -qrO /var/www/$domain/htdocs/redis-cache-plugin.zip https://downloads.wordpress.org/plugin/redis-cache.latest-stable.zip sudo unzip -qq /var/www/$domain/htdocs/redis-cache-plugin.zip -d /var/www/$domain/htdocs/wp-content/plugins/ sudo rm /var/www/$domain/htdocs/redis-cache-plugin.zip echo "" @@ -144,7 +144,7 @@ wpinstall() { # Download WP (latest version) if [[ $wp == [123] ]]; then - sudo wget --timeout=15 -qrO /var/www/$domain/htdocs/wp.tar.gz https://wordpress.org/latest.tar.gz + sudo wget --timeout=15 -t 1 -qrO /var/www/$domain/htdocs/wp.tar.gz https://wordpress.org/latest.tar.gz sudo tar -xf /var/www/$domain/htdocs/wp.tar.gz -C /var/www/$domain/htdocs/ sudo mv /var/www/$domain/htdocs/wordpress/* /var/www/$domain/htdocs/ sudo rm -rf /var/www/$domain/htdocs/wordpress @@ -527,16 +527,16 @@ createsite() { fi fi fi - - sudo chown -R www-data:www-data /var/www - [[ $(conf_read login-www-data) == "true" ]] && sudo chown root:root /var/www - + # Activate FastCgi cache if [[ "$cache" == "-cache" && "$wp" == [123] ]]; then sudo sed -i '/php.conf/c \ include common/wpfc.conf;' /etc/nginx/sites-available/$domain wp_cache_plugins fi + sudo chown -R www-data:www-data /var/www + [[ $(conf_read login-www-data) == "true" ]] && sudo chown root:root /var/www + echo "${gre}Site $domain has been successfully created!${end}" } diff --git a/plugins/site b/plugins/site index 34908f9..e7b07db 100644 --- a/plugins/site +++ b/plugins/site @@ -234,8 +234,8 @@ elif [ "$type" == "-parked" ]; then sudo sed -i "/server_name/c \ $sername" /etc/nginx/sites-available/$domain sudo sed -i "s/$mapto/$domain/g" /etc/nginx/sites-available/$domain sudo sed -i "/root/c \ root /var/www/$mapto/htdocs;" /etc/nginx/sites-available/$domain - cusconl=$( grep -F "include /var/www/$domain/conf/nginx" /etc/nginx/sites-available/$domain | sed "s/$domain/$mapto/" ) - sed -i "/include \/var\/www\/$domain\/conf\/nginx/c \ ${cusconl}" /etc/nginx/sites-available/$domain + cusconl=$( grep -F "include /var/www/$domain/" /etc/nginx/sites-available/$domain | sed "s/$domain/$mapto/" ) + sed -i "/include \/var\/www\/$domain/c \ ${cusconl}" /etc/nginx/sites-available/$domain echo "${gre}" echo "Parked domain was successfully configured! " diff --git a/plugins/stack b/plugins/stack index 3fbea9e..1dadc7b 100644 --- a/plugins/stack +++ b/plugins/stack @@ -155,6 +155,7 @@ elif [[ $arg == "-purge" && $opt == "-php" ]]; then conf_write php purged conf_write php-optim purged + [[ $(conf_read php-v7.3) == "true" ]] && conf_write php-v7.3 purged [[ $(conf_read php-v7.2) == "true" ]] && conf_write php-v7.2 purged [[ $(conf_read php-v7.1) == "true" ]] && conf_write php-v7.1 purged [[ $(conf_read php-v7.0) == "true" ]] && conf_write php-v7.0 purged @@ -385,7 +386,7 @@ elif [[ $opt == "-php-ver" ]]; then exit 0 fi - if [[ -n $value && ($value == "7.2" || $value == "7.1" || $value == "7.0" || $value == "5.6") ]]; then + if [[ -n $value && ($value == "7.3" || $value == "7.2" || $value == "7.1" || $value == "7.0" || $value == "5.6") ]]; then echo "${blu}New PHP version: '$value' ${end}" if [[ $(conf_read php) == "true" && $(conf_read php-ver) == $value ]]; then echo "${red}PHP $value is currently installed!${end}" diff --git a/plugins/webinoly b/plugins/webinoly index 0c8fb30..420518f 100644 --- a/plugins/webinoly +++ b/plugins/webinoly @@ -2,7 +2,7 @@ # Webinoly Server Manager Plugin # Syntax: webinoly