DirectAdmin把php从CLI调整为suPhp(php-cgi)

公司的机器上突然apache的cpu一直跑高,但是php是跑在php-cli模式下,需要调整为suphp(php-cgi)
默认cli是让php跑在apache上,调整php跑在用户上代替原本的apache,不调整的话看不到具体是哪个用户出问题

以下为directadmin重新编译的方法

  1. cd /usr/local/directadmin
  2. mv custombuild custombuild.old
  3. wget http://files.directadmin.com/services/custombuild/1.1/cu
  4. stombuild.tar.gz
  5. tar xvzf custombuild.tar.gz
  6. cd custombuild
  7. ./build suphp
  8. ./build all d #这个过程比较久
  9. ./build rewrite_confs
  10.  
  11. *************************************
  12. *                                   *
  13. *   All parts have been installed   *
  14. *                                   *
  15. *************************************
  16.  
  17. Type: /sbin/service httpd restart
  18.  
  19.  
  20. 更改配置文件 /usr/local/directadmin/custombuild/options.conf
  21. php5_cli=yes
  22. php5_cgi=no
  23. 改成
  24. php5_cli=no
  25. php5_cgi=yes
  26.  
  27. 更改配置文件 /usr/local/suphp/etc/suphp.conf
  28. 把日志的level改为info
  29. ;Loglevel
  30. ;loglevel=warn
  31. loglevel=error
  32.  
  33.  
  34. 然后重启apache
  35. 测试phpinfo页面下
  36. Server API     CGI/FastCGI 
  37. 就是成功了。
  38.  
  39. 这样在top里就能找出哪个虚拟主机用户跑高apachecpu或内存了!
  40.  
  41.   PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIMECOMMAND                                                         
  42. 30855 xxx    17   0 25236  10m 4464 S 52.5  0.3   0:00.31 /usr/local/php5/bin/php-cgi
  43.  
  44. suPhp日志 /var/log/suphp.log
  45.  
  46. Note: 如果发生Internal Server Error (http500) 大多数为文件宿主不正确
  47. 则继续运行
  48. ./build roundcube
  49. ./build squirrelmail
  50. ./build phpmyadmin

DirectAdmin_如何安装suphp

prestashop登陆后台提示_employee does not exist or bad password

安装prestashop,系统是Centos,控制面板是DirectAdmin,不知道是因为什么,貌似官方的版本有BUG ?
安装完毕登陆后台,系统提示 employee does not exist or bad password …
看了一下, ps_employee的表是空的 @_@

  1. mysql> INSERT INTO ps_employee(id_employee,id_profile,lastname,firstname,email,passwd,last_passwd_gen,
  2. stats_date_from,stats_date_to,active) VALUES('1','1','OWNER','YourFirstName',
  3. 'name@your.email','','2009-11-05 11:11:31','2009-01-01','2009-10-01','1');

config里的settings.inc.php里面,有个 _COOKIE_KEY_ 复制起来
md5码紧跟着新密码 xxxxxxxxxxxxxxxxxxxxxNewpasswd
例如: xxxxxxxxxxxxxxxxxxxxxxxxx123456
然后更新表的记录

  1. mysql> update ps_employee set passwd=md5('YourMD5Value123456') where email='name@your.email';

DirectAdmin控制面板报错_Init: SSL server IP/port conflict

DirectAdmin控制面板问题
客户反应使用zen-cart,在后台快速更新时出现错误,无法更新成功,且网站会临时性的无法打开。
我这边观察,他的zen-cart一旦出现错误,会导致所有网站都无法打开,wget测试提示“读取文件头错误 (Connection reset by peer)。”

  1. 正在解析主机 Domain.com... 111.111.111.111
  2. 正在连接 Domain.com[111.111.111.111]:80... 已连接。
  3. 已发出 HTTP 请求,正在等待回应...
  4. 读取文件头错误 (Connection reset by peer)
  5. 重试中。

apache日志报错

  1. [Tue Nov 17 01:52:41 2009] [warn] Init: SSL server IP/port conflict:
  2. www.domain.com:443 
  3. (/usr/local/directadmin/data/users/username/httpd.conf:48)
  4. vs. www.domain.com:443
  5. (/usr/local/directadmin/data/users/username/httpd.conf:48)

问题的关键在于DirectAdmin允许一个用户名下多个网站使用同一个SSL,但是不在同一个用户名底下的域名就会报错。
SSL导致IP冲突,apache报错,进而影响其他网站的正常访问,关掉非独立IP的SSL权限就正常了。
记录一下,希望能帮得上也碰到这种问题的朋友。
for English peopel: Disable SSL function for all the package them will be resolved.

6 6...«23456