BASH   92
upgrade php5.4
Guest on 29th April 2022 05:19:23 AM


  1. ## Set proxy
  2. export http_proxy=http://103.233.192.208:8080
  3.  
  4.  
  5. ### Clear
  6. sqlite /etc/vhcs2/db/appcontrol.db
  7. delete from queue;
  8. .exit
  9.  
  10. ## แก้ ADODB
  11. ADODB
  12. pico /home/www/vhcs2/gui/include/adodb/adodb.inc.php
  13. บรรทัดที่ 1014
  14.                                                 //      $sql .= 'NULL';
  15.                                             ## CMD Prepare
  16. l .= '';
  17. ## CMD Prepare
  18. cd /etc ; mv script-adm/ script-adm-old
  19. rm /home/www/vhcs2/gui/client/backup.php
  20. rm /home/www/vhcs2/gui/client/fix_permission.php
  21. cd /home/www/vhcs2/gui/client
  22. wget vhosting.com/tmp/up54/backup
  23. wget vhosting.com/tmp/up54/fix_permission
  24. mv backup backup.php
  25. mv fix_permission fix_permission.php
  26. cd /home/www/vhcs2/gui/include/
  27. rm reseller-functions.php
  28. wget vhosting.com/tmp/up54/reseller-functions
  29. mv reseller-functions reseller-functions.php
  30. cd /home/www/vhcs2/gui/client/
  31. wget vhosting.com/tmp/up54/manage_domains
  32. mv manage_domains manage_domains.php
  33. cd /home/www/vhcs2/gui/include/
  34. wget vhosting.com/tmp/up54/vhcs-2-0
  35. mv vhcs-2-0 vhcs-2-0.php
  36.  
  37.  
  38.  
  39. cd /home/www/vhcs2/gui/tools
  40. mv filemanager filemanager-old
  41. wget appservhosting.com/vhcs2/tools/ffm.tar.gz
  42. tar xvfz ffm.tar.gz
  43. rm ffm.tar.gz
  44. rm -r filemanager-old
  45.  
  46. cd /etc/apt/
  47. rm sources.list
  48. wget appservhosting.com/tmp/up54/sources.list
  49. cd /etc/mysql
  50. rm my.cnf
  51. wget appservhosting.com/tmp/up54/my.cnf
  52. touch /etc/apache2/httpd.conf
  53.  
  54. cd /etc/php5/apache2
  55. mv php.ini php.ini-old
  56. wget appservhosting.com/tmp/up54/php.ini
  57.  
  58. cd /etc/php5/cli
  59. mv php.ini php.ini-old
  60. wget appservhosting.com/tmp/up54/php.ini-cli
  61. mv php.ini-cli php.ini
  62.  
  63. cd /etc/vhcs2/db
  64. sqlite appcontrol.db .dump | sqlite3 NEW.DB
  65. mv appcontrol.db appcontrol-old.db
  66. mv NEW.DB appcontrol.db
  67. chmod 777 appcontrol.db
  68. chown www-data.# cd /home/www/vhcs2/gui/tools/webmail/db
  69. # sqlite _userdb.db .dump | sqlite3 NEW.DB
  70. # mv _userdb.db _userdb-V2.db
  71. # mv NEW.DB _userdb.db
  72. # chmod 777 _userdb.db
  73. # cd /home/www/vhcs2/gui/tools/webmail/db
  74. # wget appservhosting.com/tmp/up54/roundcubemail-1.1.3-complete.tar.gz
  75. # tar xvfz roundcubemail-1.1.3-complete.tar.gz
  76. # cp -a roundcubemail-1.1.3/* ../
  77. # rm -r roundcubemail-1.1.3/  roundcubemail-1.1.3-complete.tar.gz
  78. # cd /home/www/vhcs2/gui/tools/webmail/skins/classic/templates/
  79. # wget appservhosting.com/tmp/up54/rcube/classic-login.html
  80. # mv classic-login.html login.html
  81. # cd /home/www/vhcs2/gui/tools/webmail/skins/larry/templates/
  82. # wget appservhosting.com/tmp/up54/rcube/larry-login.html
  83. # mv larry-login.html login.html
  84. y-login.html login.html
  85.  
  86.  
  87.  
  88. apt-get update
  89. apt-get install debian-keyring debian-archive-keyring
  90.  
  91. apt-get update
  92. apt-get dist-upgrade -d
  93.  
  94.  
  95. /etc/init.d/mysql stop
  96. cd /home
  97. mv mysql mysql-old
  98. mkdir mysql
  99. chown mysql.mysql mysql
  100. killall -9 apache2
  101.  
  102.  
  103. apt-get install mysql-server-5.5  libc6-dev -y### เจอปัญหา Postfix เน่าให้ลง exim4-base แล้ว Reinstall postfix ใหม่
  104. าให้ลง exim4-base แล้ว Reinstall postfix ใหม่
  105. cd /etc/
  106. mv postfix postfix-old
  107.  
  108.  
  109. touch /etc/apache2/httpd.conf
  110. apt-get install  php5-intl rsyslog -y
  111.  
  112.  
  113. /etc/init.d/mysql stop
  114. cd /home
  115. mv mysql mysql-new
  116. mv mysql-old mysql
  117. /etc/init.d/mysql start
  118. /etc/init.d/apache2 start
  119.  
  120.  
  121. *****
  122. โหลด script-adm จาก ns มา
  123. *****
  124. cd /etc
  125. rz
  126.  
  127.  
  128. tar xvfz s.tar.gz
  129. cp -a script-adm-old/config-mysql.php script-adm
  130. mv script-adm-old script-adm
  131. rm s.tar.gz
  132. cd scr######################### ปัญหาที่พบ
  133. ### แก้ปัญหา mysql
  134. d/sqlite.ini
  135. php chk-apache.php
  136.  
  137.  
  138.  
  139.  
  140. ######################### ปัญหาที่พบ
  141. ### แก้ปัญหา mysql
  142. aptitude remove  mysql-client-5.5  mysql-client      libmysqlclient18:i386  mysql-server-5.5  \
  143. mysql-server-core-5.5  libdbd-mysql-perl   mytop php5-mysql proftpd-mod-mysql          
  144.  
  145. aptitude install  mysql-client-5.5  mysql-client      libmysqlclient18:i386  mysql-server-5.5  \
  146. mysql-server-core-5.5  libdbd-mysql-perl   my### รหัสผ่าน VHCS2 ให้ดึงไฟล์ engine ต่างๆ ใน IP 150.107.31.42 มาใหม่หมด
  147. dmin
  148. แก้ส่วนข## FTP
  149. ysql/user
  150. debian-sys
  151.  
  152. ตามใน /var/lib/mysql
  153.  
  154.  
  155. ### รหัสผ่าน VHCS2 ให้ดึงไฟล์ engine ต่างๆ ใน IP 150.107.31.42 มาใหม่หมด
  156. แล้วสั่ง Gen รหัสผ่านใหม่
  157.  
  158.  
  159.  
  160. ## FTP
  161. grant select,insert,update,delete on vhcs2.ftp_group to vftp@localhost identified by 'vftp_admin_login';
  162. grant select,insert,update,delete on vhcs2.ftp_users to vftp@localhost identified by 'vftp_admin_login');
  163.  
  164.  
  165.  
  166. ##########################################
  167.  
  168.  
  169. if (!ini_get('localhost identified by 'vftp_admin_login';
  170. grant select,insert,update,delete on vhcs2.quotatallies to vftp@localhost identified by 'vftp_admin_login';
  171. SET PASSWORD FOR 'vftp'@localhost = PASSWORD('loginmepls');
  172.  
  173.  
  174.  
  175. ##########################################
  176.  
  177.  
  178. if (!ini_get('register_globa###  Session
  179. superglobals = array($_SERVER, $_ENV,
  180.         $_FILES, $_COOKIE, $_POST, $_GET);
  181.     if (isset($_SESSION)) {
  182.         array_unshift($superglobals, $_SESSION);
  183.     }
  184.     foreach ($superglobals as $superglobal) {
  185.         extract($superglobal, EXTR_SKIP);
  186.     }
  187. }
  188.  
  189. ###  Session
  190. function session_register($name){
  191.     global $$name;
  192.     $_SESSION[$name] = $$name;
  193.     $$name = &$_SESSION[$name];
  194. }
  195.  
  196. function session_unregister($name) {
  197.         unset($_SESSION['$name']);
  198. }
  199.  
  200. function session_is_registered($name) {
  201.        if (isset($_SESSION['$name'])) {
  202.         return true;
  203.        } else {
  204.         return false;
  205.        }
  206. }
  207.  
  208.  
  209. ระบบต้องอัพเกรดเป็น PHP 5.4 ครับ ต้องแก้ Code ครับ เพราะ Function เก่าๆ ถูกตัดออกไปเยอะมากครับ
  210. เพราะ PHP ตอนนี้เป็น version 5.6 แล้วครับ ตัว PHP 5.3 ลงไปจะไม่มี Support ต่อไปอีกแล้ว
  211. หากไม่อัพเกรด PHP version ให้เป็นปัจจุบัน อาจโดน Hack ทั้ง Server ได้ในอนาคตครับ
  212. ดังนั้นหากมีปัญหาเรื่อง Code ให้แจ้งมาครับ ทางเรามีโปรแกรมเมอร์คอยช่วยแก้ให้ Code รองรับ PHP 5.4 ครับ
  213.  
  214.  
  215.  
  216. replace "\$PHP_SELF" "\$_SERVER['PHP_SELF']" --
  217.  
  218.  
  219.  
  220. wget appservhosting.com/tmp/Joomla_2.5.28-Stable-Full_Package.zip
  221. unzip Joomla_2.5.28-Stable-Full_Package.zip
  222.  
  223. wget appservhosting.com/tmp/latest.tar.gz
  224. tar xvfz latest.tar.gz
  225. cp -a wordpress/* ./
  226. rm -r wordpress
  227.  
  228.  
  229.  
  230. $new = htmlspecialchars("$test",ENT_QUOTES,'UTF-8',true);
  231.  
  232.  
  233. ความเปลี่ยนแปลงของ PHP 5.3  -> PHP 5.4
  234. 1. บังคับใช้ register globals off คือต้อง $_GET $_POST ครับ
  235. 2. คำสั่ง session เลือกใช้
  236. session_register() เปลี่ยนเป็น $_SESSION['sess_id'] = $sess_id;
  237. session_unregister() เปลี่ยนเป็น unset($_SESSION['sess_name']);
  238.  
  239. สองอย่างแค่นี้เองครับ หรือทำ Function CallBack ได้ครับ
  240. โดยเพิ่มเข้าไป 2 function ครับ
  241. function session_register($name){
  242.     global $$name;
  243.     $_SESSION[$name] = $$name;
  244.     $$name = &$_SESSION[$name];
  245. }
  246.  
  247. function session_unregister($name) {
  248.         unset($_SESSION['$name']);
  249. }
  250.  
  251. function session_is_registered($name) {
  252.        if (isset($_SESSION['$name'])) {
  253.         return true;
  254.        } else {
  255.         return false;
  256.        }
  257. }
  258.  
  259.  
  260.  
  261. ปัญหาเกิดจากตัวเว็บไม่รองรับ Register Globals = Off ครับ
  262. Server ต้องปรับการเขียนให้เข้ากับ PHP 5.4 ครับ
  263. ตอนนี้แก้ปัญหาเบื้องต้นใส่ Code Emulate Register Globals = #faq.misc.registerglobals ครับ
  264. ��
  265.  
  266. i#### OBEC
  267. t('register_globals')) {
  268.     $superglobals = array($_SERVER, $_ENV,
  269.         $_FILES, $_COOKIE, $_POST, $_GET);
  270.     if (isset($_SESSION)) {
  271.         array_unshift($superglobals, $_##### PHPNuke Locker โหลดไฟล์จาก nawahealth.com
  272. uperglobal) {
  273.         extract($superglobal, EXTR_SKIP);
  274.     }
  275. }
  276.  
  277. ให้ใส่ไว้หัวสุดของไฟล์ครับ หรือหากมี�## newslist
  278. �หนที่มีการ include เป็นไฟล์หลัก
  279. ก็ใส่ไว้บนสุดของไฟล์แค่ไฟล์เดียวครับ
  280.  
  281.  
  282. ภา�# Mambo
  283. เดือนนี้จะทำให้เสร็จทุก server ครับ ตามที่แจ้งใน http://www.appservhosting.com/
  284. ตอนนี้ทางเราปรับตัว Register Globals ให้ถูกต้องก่อนเราถึงจะอัพเป็น PHP 5.4 ครับ
  285. หลายๆ server เป็น Register Globals = Off อยู่แล้ว แต่มีบาง Server ที่มีแค่ 4 Server ที่เป็น On ครับ
  286.  
  287. จริงๆ การเขียนแบบ Register Globals = Off จะมาช่วยเรื่อง Security อย่างมากครับ ใน PHP 5.4
  288. จะไม่มี Register Globals = On แล้วครับ จะปรับเป็น Off โดยปริยายและแก้ไขไม่ได้
  289. ดังนั้นตอนนี้การแก้ปัญหาเ

Raw Paste

Login or Register to edit or fork this paste. It's free.