ioncube.sh 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. #!/bin/bash
  2. # Author: yeho <lj2007331 AT gmail.com>
  3. # BLOG: https://blog.linuxeye.cn
  4. #
  5. # Notes: OneinStack for CentOS/RedHat 6+ Debian 7+ and Ubuntu 12+
  6. #
  7. # Project home page:
  8. # https://oneinstack.com
  9. # https://github.com/oneinstack/oneinstack
  10. Install_ionCube() {
  11. if [ -e "${php_install_dir}/bin/phpize" ]; then
  12. pushd ${oneinstack_dir}/src > /dev/null
  13. PHP_detail_ver=`${php_install_dir}/bin/php -r 'echo PHP_VERSION;'`
  14. PHP_main_ver=${PHP_detail_ver%.*}
  15. phpExtensionDir=`${php_install_dir}/bin/php-config --extension-dir`
  16. if [ "${TARGET_ARCH}" == "armv7" ]; then
  17. tar xzf ioncube_loaders_lin_armv7l.tar.gz
  18. else
  19. tar xzf ioncube_loaders_lin_${SYS_BIT_d}.tar.gz
  20. fi
  21. [ -e "${php_install_dir}/bin/phpize" ] && [ ! -d "${phpExtensionDir}" ] && mkdir -p ${phpExtensionDir}
  22. case "${PHP_main_ver}" in
  23. 7.3)
  24. if [ -z "`echo $phpExtensionDir | grep 'non-zts'`" ]; then
  25. /bin/mv ioncube/ioncube_loader_lin_7.3_ts.so ${phpExtensionDir}
  26. zend_extension="${phpExtensionDir}/ioncube_loader_lin_7.3_ts.so"
  27. else
  28. /bin/mv ioncube/ioncube_loader_lin_7.3.so ${phpExtensionDir}
  29. zend_extension="${phpExtensionDir}/ioncube_loader_lin_7.3.so"
  30. fi
  31. ;;
  32. 7.2)
  33. if [ -z "`echo $phpExtensionDir | grep 'non-zts'`" ]; then
  34. /bin/mv ioncube/ioncube_loader_lin_7.2_ts.so ${phpExtensionDir}
  35. zend_extension="${phpExtensionDir}/ioncube_loader_lin_7.2_ts.so"
  36. else
  37. /bin/mv ioncube/ioncube_loader_lin_7.2.so ${phpExtensionDir}
  38. zend_extension="${phpExtensionDir}/ioncube_loader_lin_7.2.so"
  39. fi
  40. ;;
  41. 7.1)
  42. if [ -z "`echo $phpExtensionDir | grep 'non-zts'`" ]; then
  43. /bin/mv ioncube/ioncube_loader_lin_7.1_ts.so ${phpExtensionDir}
  44. zend_extension="${phpExtensionDir}/ioncube_loader_lin_7.1_ts.so"
  45. else
  46. /bin/mv ioncube/ioncube_loader_lin_7.1.so ${phpExtensionDir}
  47. zend_extension="${phpExtensionDir}/ioncube_loader_lin_7.1.so"
  48. fi
  49. ;;
  50. 7.0)
  51. if [ -z "`echo $phpExtensionDir | grep 'non-zts'`" ]; then
  52. /bin/mv ioncube/ioncube_loader_lin_7.0_ts.so ${phpExtensionDir}
  53. zend_extension="${phpExtensionDir}/ioncube_loader_lin_7.0_ts.so"
  54. else
  55. /bin/mv ioncube/ioncube_loader_lin_7.0.so ${phpExtensionDir}
  56. zend_extension="${phpExtensionDir}/ioncube_loader_lin_7.0.so"
  57. fi
  58. ;;
  59. 5.6)
  60. if [ -z "`echo $phpExtensionDir | grep 'non-zts'`" ]; then
  61. /bin/mv ioncube/ioncube_loader_lin_5.6_ts.so ${phpExtensionDir}
  62. zend_extension="${phpExtensionDir}/ioncube_loader_lin_5.6_ts.so"
  63. else
  64. /bin/mv ioncube/ioncube_loader_lin_5.6.so ${phpExtensionDir}
  65. zend_extension="${phpExtensionDir}/ioncube_loader_lin_5.6.so"
  66. fi
  67. ;;
  68. 5.5)
  69. if [ -z "`echo $phpExtensionDir | grep 'non-zts'`" ]; then
  70. /bin/mv ioncube/ioncube_loader_lin_5.5_ts.so ${phpExtensionDir}
  71. zend_extension="${phpExtensionDir}/ioncube_loader_lin_5.5_ts.so"
  72. else
  73. /bin/mv ioncube/ioncube_loader_lin_5.5.so ${phpExtensionDir}
  74. zend_extension="${phpExtensionDir}/ioncube_loader_lin_5.5.so"
  75. fi
  76. ;;
  77. 5.4)
  78. if [ -z "`echo $phpExtensionDir | grep 'non-zts'`" ]; then
  79. /bin/mv ioncube/ioncube_loader_lin_5.4_ts.so ${phpExtensionDir}
  80. zend_extension="${phpExtensionDir}/ioncube_loader_lin_5.4_ts.so"
  81. else
  82. /bin/mv ioncube/ioncube_loader_lin_5.4.so ${phpExtensionDir}
  83. zend_extension="${phpExtensionDir}/ioncube_loader_lin_5.4.so"
  84. fi
  85. ;;
  86. 5.3)
  87. if [ -z "`echo $phpExtensionDir | grep 'non-zts'`" ]; then
  88. /bin/mv ioncube/ioncube_loader_lin_5.3_ts.so ${phpExtensionDir}
  89. zend_extension="${phpExtensionDir}/ioncube_loader_lin_5.3_ts.so"
  90. else
  91. /bin/mv ioncube/ioncube_loader_lin_5.3.so ${phpExtensionDir}
  92. zend_extension="${phpExtensionDir}/ioncube_loader_lin_5.3.so"
  93. fi
  94. ;;
  95. *)
  96. echo "${CWARNING}Your php ${PHP_detail_ver} does not support ionCube! ${CEND}";
  97. ;;
  98. esac
  99. if [ -f "${zend_extension}" ]; then
  100. echo "zend_extension=${zend_extension}" > ${php_install_dir}/etc/php.d/00-ioncube.ini
  101. echo "${CSUCCESS}PHP ionCube module installed successfully! ${CEND}"
  102. rm -rf ioncube
  103. fi
  104. popd > /dev/null
  105. fi
  106. }
  107. Uninstall_ionCube() {
  108. if [ -e "${php_install_dir}/etc/php.d/00-ioncube.ini" ]; then
  109. rm -f ${php_install_dir}/etc/php.d/00-ioncube.ini
  110. echo; echo "${CMSG}PHP ionCube module uninstall completed${CEND}"
  111. else
  112. echo; echo "${CWARNING}PHP ionCube module does not exist! ${CEND}"
  113. fi
  114. }