php lsapi bug?

Discussion in 'Bug Reports' started by PSS, Sep 27, 2009.

  1. PSS

    PSS Member

    I installed LSWS Enterprise Trial 4.10 with exactly same settings and php setup/configure & compile (without errors) as the other server (identical RHEL 5 64-bit OS). Server does not have Apache installed.

    The problem: with clean 4.10 install php 5.2.11 refused to start (php files were downloaded instead of executed), the php main process and one child process was there but LS did not see php extension as External Application and even in realtime stats page it showed External Application as empty.

    fcgi-bin/lsphp -i worked fine. I checked and /tmp/lshttpd/lsphp.sock was there.

    The pitfall seemed to be this notice in logs

    NOTICE [config:server:epsr:phpLsapi]'Process Limit' probably is too low, adjust the limit to: 3100.

    BTW: What does that "epsr" mean?

    Neither empty or 0 did not work, you needed to have a value for Soft and Hard Process Limit for server, only then php lsapi started to run php scripts.

    Even after I set

    Process Soft Limit 2000
    Process Hard Limit 3100

    I see in logs after restart:

    /opt/lsws/bin/lswsctrl stop
    /opt/lsws/bin/lswsctrl start

    Server Log Viewer:
    NOTICE [config:server:epsr:phpLsapi]'Process Limit' probably is too low, adjust the limit to: 3100.

    But the notice disappear when I set

    Process Soft Limit 3100
    Process Hard Limit 3100

    My php config is

    CFLAGS="-O2" CXX=gcc CXXFLAGS="-O2" ./configure '--prefix=/php5' '--with-config-file-path=/opt/lsws/php' '--with-litespeed' '--with-libdir=lib64' '--with-jpeg-dir=lib64' '--with-png-dir=lib64' '--with-ttf' '--with-png' '--with-gd' '--enable-gd-native-ttf' '--enable-exif' '--enable-ftp' '--with-mysql' '--with-mysqli' '--with-mysql-sock=/var/lib/mysql/mysql.sock' '--enable-memory-limit' '--with-zlib' '--with-openssl' '--with-curl' '--enable-magic-quotes' '--enable-mbstring' '--enable-mbstr-enc-trans' '--enable-mbregex' '--enable-bcmath' '--enable-calendar' '--enable-sockets' '--enable-zip' '--enable-shmop' '--with-pear=/usr/lib64/php/pear' '--disable-cgi' '--disable-debug'

    PHP is compiled in shell.

    Litespeed PHP compiler seems to suggest by default '--enable-sysvsem' '--enable-sysvshm'.
    Are those needed by PHP Lsapi?
    Last edited: Sep 27, 2009
  2. mistwang

    mistwang LiteSpeed Staff

    You have set the "Max Conns" for PHP pretty high, so LSWS think you need to set process limit to 3100.

    "Max Conns" * n-CPU license * 2 + some overhead.

    "espr" is "external processor",
    We use some PHP function in Admin console requires '--enable-sysvsem' '--enable-sysvshm', it is up to your web application.

Share This Page