1
0

ioncube.sh 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  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_ionCube() {
  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. if [ "${OS_BIT}" == '64' ]; then
  16. tar xzf ioncube_loaders_lin_x86-64.tar.gz
  17. else
  18. if [ "${TARGET_ARCH}" == "armv7" ]; then
  19. tar xzf ioncube_loaders_lin_armv7l.tar.gz
  20. else
  21. tar xzf ioncube_loaders_lin_x86.tar.gz
  22. fi
  23. fi
  24. [ ! -d "${phpExtensionDir}" ] && mkdir -p ${phpExtensionDir}
  25. case "${PHP_main_ver}" in
  26. 7.2)
  27. if [ -z "`echo $phpExtensionDir | grep 'non-zts'`" ]; then
  28. /bin/cp ioncube/ioncube_loader_lin_7.2_ts.so ${phpExtensionDir}
  29. zend_extension="${phpExtensionDir}/ioncube_loader_lin_7.2_ts.so"
  30. else
  31. /bin/cp ioncube/ioncube_loader_lin_7.2.so ${phpExtensionDir}
  32. zend_extension="${phpExtensionDir}/ioncube_loader_lin_7.2.so"
  33. fi
  34. ;;
  35. 7.1)
  36. if [ -z "`echo $phpExtensionDir | grep 'non-zts'`" ]; then
  37. /bin/cp ioncube/ioncube_loader_lin_7.1_ts.so ${phpExtensionDir}
  38. zend_extension="${phpExtensionDir}/ioncube_loader_lin_7.1_ts.so"
  39. else
  40. /bin/cp ioncube/ioncube_loader_lin_7.1.so ${phpExtensionDir}
  41. zend_extension="${phpExtensionDir}/ioncube_loader_lin_7.1.so"
  42. fi
  43. ;;
  44. 7.0)
  45. if [ -z "`echo $phpExtensionDir | grep 'non-zts'`" ]; then
  46. /bin/cp ioncube/ioncube_loader_lin_7.0_ts.so ${phpExtensionDir}
  47. zend_extension="${phpExtensionDir}/ioncube_loader_lin_7.0_ts.so"
  48. else
  49. /bin/cp ioncube/ioncube_loader_lin_7.0.so ${phpExtensionDir}
  50. zend_extension="${phpExtensionDir}/ioncube_loader_lin_7.0.so"
  51. fi
  52. ;;
  53. 5.6)
  54. if [ -z "`echo $phpExtensionDir | grep 'non-zts'`" ]; then
  55. /bin/cp ioncube/ioncube_loader_lin_5.6_ts.so ${phpExtensionDir}
  56. zend_extension="${phpExtensionDir}/ioncube_loader_lin_5.6_ts.so"
  57. else
  58. /bin/cp ioncube/ioncube_loader_lin_5.6.so ${phpExtensionDir}
  59. zend_extension="${phpExtensionDir}/ioncube_loader_lin_5.6.so"
  60. fi
  61. ;;
  62. 5.5)
  63. if [ -z "`echo $phpExtensionDir | grep 'non-zts'`" ]; then
  64. /bin/cp ioncube/ioncube_loader_lin_5.5_ts.so ${phpExtensionDir}
  65. zend_extension="${phpExtensionDir}/ioncube_loader_lin_5.5_ts.so"
  66. else
  67. /bin/cp ioncube/ioncube_loader_lin_5.5.so ${phpExtensionDir}
  68. zend_extension="${phpExtensionDir}/ioncube_loader_lin_5.5.so"
  69. fi
  70. ;;
  71. 5.4)
  72. if [ -z "`echo $phpExtensionDir | grep 'non-zts'`" ]; then
  73. /bin/cp ioncube/ioncube_loader_lin_5.4_ts.so ${phpExtensionDir}
  74. zend_extension="${phpExtensionDir}/ioncube_loader_lin_5.4_ts.so"
  75. else
  76. /bin/cp ioncube/ioncube_loader_lin_5.4.so ${phpExtensionDir}
  77. zend_extension="${phpExtensionDir}/ioncube_loader_lin_5.4.so"
  78. fi
  79. ;;
  80. 5.3)
  81. if [ -z "`echo $phpExtensionDir | grep 'non-zts'`" ]; then
  82. /bin/cp ioncube/ioncube_loader_lin_5.3_ts.so ${phpExtensionDir}
  83. zend_extension="${phpExtensionDir}/ioncube_loader_lin_5.3_ts.so"
  84. else
  85. /bin/cp ioncube/ioncube_loader_lin_5.3.so ${phpExtensionDir}
  86. zend_extension="${phpExtensionDir}/ioncube_loader_lin_5.3.so"
  87. fi
  88. ;;
  89. *)
  90. echo "Error! Your PHP ${PHP_detail_ver} does not support ionCube!"
  91. exit 1
  92. ;;
  93. esac
  94. echo "zend_extension=${zend_extension}" > ${php_install_dir}/etc/php.d/ext-0ioncube.ini
  95. rm -rf ioncube
  96. popd
  97. }