1
0

ZendGuardLoader.sh 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. #!/bin/bash
  2. # Author: yeho <lj2007331 AT gmail.com>
  3. # BLOG: https://blog.linuxeye.cn
  4. #
  5. # Notes: OneinStack for CentOS/RadHat 6+ Debian 6+ and Ubuntu 12+
  6. #
  7. # Project home page:
  8. # https://oneinstack.com
  9. # https://github.com/lj2007331/oneinstack
  10. Install_ZendGuardLoader() {
  11. pushd ${oneinstack_dir}/src > /dev/null
  12. PHP_detail_ver=$(${php_install_dir}/bin/php -r 'echo PHP_VERSION;')
  13. PHP_main_ver=${PHP_detail_ver%.*}
  14. phpExtensionDir=`${php_install_dir}/bin/php-config --extension-dir`
  15. [ ! -d "${phpExtensionDir}" ] && mkdir -p ${phpExtensionDir}
  16. if [ -n "`echo $phpExtensionDir | grep 'non-zts'`" ]; then
  17. case "${PHP_main_ver}" in
  18. 5.6)
  19. tar xzf zend-loader-php5.6-linux-${SYS_BIT_c}.tar.gz
  20. /bin/cp zend-loader-php5.6-linux-${SYS_BIT_c}/ZendGuardLoader.so ${phpExtensionDir}
  21. rm -rf zend-loader-php5.6-linux-${SYS_BIT_c}
  22. ;;
  23. 5.5)
  24. tar xzf zend-loader-php5.5-linux-${SYS_BIT_c}.tar.gz
  25. /bin/cp zend-loader-php5.5-linux-${SYS_BIT_c}/ZendGuardLoader.so ${phpExtensionDir}
  26. rm -rf zend-loader-php5.5-linux-${SYS_BIT_c}
  27. ;;
  28. 5.4)
  29. tar xzf ZendGuardLoader-70429-PHP-5.4-linux-glibc23-${SYS_BIT_c}.tar.gz
  30. /bin/cp ZendGuardLoader-70429-PHP-5.4-linux-glibc23-${SYS_BIT_c}/php-5.4.x/ZendGuardLoader.so ${phpExtensionDir}
  31. rm -rf ZendGuardLoader-70429-PHP-5.4-linux-glibc23-${SYS_BIT_c}
  32. ;;
  33. 5.3)
  34. tar xzf ZendGuardLoader-php-5.3-linux-glibc23-${SYS_BIT_c}.tar.gz
  35. /bin/cp ZendGuardLoader-php-5.3-linux-glibc23-${SYS_BIT_c}/php-5.3.x/ZendGuardLoader.so ${phpExtensionDir}
  36. rm -rf ZendGuardLoader-php-5.3-linux-glibc23-${SYS_BIT_c}
  37. ;;
  38. *)
  39. echo "Error! Your PHP ${PHP_detail_ver} does not support ZendGuardLoader!"
  40. ;;
  41. esac
  42. if [ -f "${phpExtensionDir}/ZendGuardLoader.so" ]; then
  43. cat > ${php_install_dir}/etc/php.d/01-ZendGuardLoader.ini<< EOF
  44. [Zend Guard Loader]
  45. zend_extension=${phpExtensionDir}/ZendGuardLoader.so
  46. zend_loader.enable=1
  47. zend_loader.disable_licensing=0
  48. zend_loader.obfuscation_level_support=3
  49. EOF
  50. echo "${CSUCCESS}PHP ZendGuardLoader module installed successfully! ${CEND}"
  51. fi
  52. else
  53. echo "Error! Your Apache's prefork or PHP already enable thread safety! "
  54. fi
  55. popd
  56. }