improvements and fixes

- php7.3 support
- cache wp plugins permissions fixed
- custom-nginx-rules path for parked sites fixed
- wget timeout improved
- opcache not working when custom tool port is set, fixed.
- external-list-update command renamed to external-sources-update
- readme and some messaged improved.
This commit is contained in:
Cristhian Martínez Ochoa 2018-10-26 21:30:46 -06:00
parent b975be82a2
commit ce1f8d21a9
7 changed files with 43 additions and 36 deletions

View file

@ -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 Lets 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.

View file

@ -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

View file

@ -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}"
}

View file

@ -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! "

View file

@ -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}"

View file

@ -2,7 +2,7 @@
# Webinoly Server Manager Plugin
# Syntax: webinoly <option>
# Options: -update, -server-update or -server-reset, -verify, -dbpass, -tools-port, -login-www-data, -nologin-www-data, -config-cache, -uninstall, -info, -external-list-update, -clear-cache, -version, -blockip, -unblockip, -conf-value_, -yoast-sitemap
# Options: -update, -server-update or -server-reset, -verify, -dbpass, -tools-port, -login-www-data, -nologin-www-data, -config-cache, -uninstall, -info, -external-sources-update, -clear-cache, -version, -blockip, -unblockip, -conf-value_, -yoast-sitemap
opt="$1"
source /opt/webinoly/lib/webin
@ -20,7 +20,7 @@ fi
if [[ $opt == "-update" ]]; then
echo ""
[[ -n $value ]] && branch="-ver=${value}" || branch=""
sudo wget --timeout=15 --referer="https://update.webinoly.com/?ver=$(app_version)" -qrO weby https://qrok.es/wyupd && sudo bash weby upd $branch
sudo wget --timeout=15 -t 1 --referer="https://update.webinoly.com/?ver=$(app_version)" -qrO weby https://qrok.es/wyupd && sudo bash weby upd $branch
echo "${gre}Webinoly App has been updated successfully!${end}"
@ -255,9 +255,9 @@ elif [[ $opt == "-info" ]]; then
system_info
elif [[ $opt == "-external-list-update" ]]; then
elif [[ $opt == "-external-sources-update" ]]; then
echo "${blu}- Downloading Public Suffix List!${end}"
sudo wget --timeout=15 -qrO /tmp/temp-public_suffix_list.dat https://publicsuffix.org/list/public_suffix_list.dat
sudo wget --timeout=15 -t 1 -qrO /tmp/temp-public_suffix_list.dat https://publicsuffix.org/list/public_suffix_list.dat
if [[ -s /tmp/temp-public_suffix_list.dat ]]; then
echo "${blu}- Processing file!${end}"
sudo sed -i '/^\/\// d' /tmp/temp-public_suffix_list.dat
@ -272,7 +272,7 @@ elif [[ $opt == "-external-list-update" ]]; then
echo ""
echo "${blu}- Downloading Timezone Database!${end}"
sudo wget --timeout=15 -qrO /tmp/temp-timezonedb.zip https://timezonedb.com/files/timezonedb.csv.zip
sudo wget --timeout=15 -t 1 -qrO /tmp/temp-timezonedb.zip https://timezonedb.com/files/timezonedb.csv.zip
if [[ -s /tmp/temp-timezonedb.zip ]]; then
echo "${blu}- Processing file!${end}"
sudo unzip -qq /tmp/temp-timezonedb.zip -d /tmp/tz/
@ -321,7 +321,7 @@ elif [[ $opt == "-clear-cache" ]]; then
sudo chown -R www-data:www-data /var/www/$port/htdocs/php/opcache
sudo chmod 644 /var/www/$port/htdocs/php/opcache/index.php
fi
wget --spider --no-check-certificate --timeout=15 localhost:22222/php/opcache/ > /dev/null 2>&1 &
wget --spider --no-check-certificate --timeout=15 -t 1 localhost:$port/php/opcache/ > /dev/null 2>&1 &
echo "${gre}- OpCache has been successfully cleared!${end}"
else
echo "${red}[ERROR] We can not clear OpCache because PHP and NGINX are not installed!${end}"

14
weby
View file

@ -56,18 +56,18 @@ if [[ $2 == "-ver="* ]]; then
echo "$(tput setaf 1)"
if [[ $code == 200 ]]; then
sudo wget --timeout=15 -qrO $HOME/webinoly.tar https://qrok.es/webinoly?version=$ver
sudo wget --timeout=15 -t 1 -qrO $HOME/webinoly.tar https://qrok.es/webinoly?version=$ver
webyversion="$ver"
[[ $ver == "beta" ]] && echo "[WARNING] You are installing a BETA version of Webinoly and it's not recommended for production enviroments."
# Just for stadistics
[[ $statskip == "true" ]] || sudo wget --timeout=15 --spider --referer="https://webinoly.com/?version=${ver}${update}" -q https://qrok.es/wyver
[[ $statskip == "true" ]] || sudo wget --timeout=15 -t 1 --spider --referer="https://webinoly.com/?version=${ver}${update}" -q https://qrok.es/wyver
else
echo "[ERROR] Version not found or not available! ($code) $(tput sgr0)"
exit 1
fi
echo $(tput sgr0)
else
sudo wget --timeout=15 --referer="https://webinoly.com/?option=${setup}${update}" -qrO $HOME/webinoly.tar https://qrok.es/wytar
sudo wget --timeout=15 -t 1 --referer="https://webinoly.com/?option=${setup}${update}" -qrO $HOME/webinoly.tar https://qrok.es/wytar
fi
[[ ! -d /opt/webinoly ]] && sudo mkdir /opt/webinoly
@ -130,9 +130,13 @@ echo "${blu}"
echo "****************************************************************************"
echo "********************** D O N A T I O N S ***************************"
echo "*** If you like Webinoly, buy me a coffee or a beer to show support. ***"
echo "************ PayPal: https://www.paypal.me/qrokes ******************"
echo "****************************************************************************"
echo "${end}"
echo "********** Bitcoin: 1E3Ybo5UcvaAr1MoK4nBnMRFFY9aEMiku3 *************"
echo "************ PayPal: https://www.paypal.me/qrokes *******************"
echo "****************************************************************************"
echo "*** Your regular donations is what keep this project moving forward. ***"
echo "****************************************************************************"
echo "${end}"
# Remove Installation File