PassMark Logo
Home » Forum

Announcement

Collapse
No announcement yet.

Problems with V7 Build 1000 (linux) using PHP

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Problems with V7 Build 1000 (linux) using PHP

    I first tried to install this software on a test server running PHP 5.2.17. I installed all of the files as instructed and made the changes given in the install.sh file by hand. I then set the configuration settings to the site's URL. That resulted in two error messages:

    1. Warning: Cannot modify header information - headers already sent by (output started at /path/to/zoom/config_file.php:378 in /path/to/zoom/config.php on line 839. This is caused by extra blank lines after the last ?> in that file. I deleted those.

    2. Parse error: syntax error, unexpected T_FUNCTION in /path/to/zoom/config.php on line 851. This is caused by an inline function starting on that line, which PHP 5.2 does not support. I converted it to a regular function.

    At this point I decided to switch to a more modern version of PHP, so the remainder is under PHP 5.3.28. At this point, I no longer get any error messages, but clicking the Start button in ZoomIndexer.php produces no result. The Configure button is greyed out, but nothing else happens. The indexlog.txt is never created. I tried creating a blank file for it to use, but it remains empty. The zoomoutput file is created but remains empty.

    I noticed that, while the install script creates a temp directory in the zoom directory, the code contains hardcoded references to the /tmp directory. This server does not allow PHP scripts to use /tmp, so I did a global replace with the path to /zoom/temp. Still no results.

    I thought that the security policies might be preventing the ZoomEngine from running, so I copied it to the cgi-bin directory and changed the paths to it in zoom_defines.php. Still nothing happens.

    I'm running out of ideas here. Any suggestions would be welcome.

    Regards
    Jim

  • #2
    Is there a .ZoomLogBuffer and .ZoomPageDataBuffer present in the zoom directory? If not please re-download the installer, an earlier release didn’t have these files present which would stop zoom from running.

    What distribution of Linux are you using? If it uses SELinux it will usually block the ZoomEngine executable from starting, as yet we’ve haven’t found a way of adding an exception / allowing this on such systems (short of disabling the SELinux features).
    --Ray
    Wrensoft Web Software
    Sydney, Australia
    Zoom Search Engine

    Comment


    • #3
      The .ZoomLogBuffer and .ZoomPageDataBuffer are present in the download, so they are on both servers. The test server is running Ubuntu (I forget which version) and the one I'm currently using is running FreeBSD 8.2.

      Shouldn't I be getting an error message if the ZoomEngine executable doesn't run? It looks like launch_engine.php should at least print the "Launching engine..." string, unless I'm totally misunderstanding the code. Which is likely given that I just started looking at it.

      Regards
      Jim

      Comment


      • #4
        Thanks for checking that.

        We’ve started some testing on FreeBSD and were able to see the PHP errors you saw before so we’ll fix these up. Could you try running the ldd command on ZoomEngine, it’s possible there is a missing library (eg libcurl as mentioned in the readme) that is preventing it from being started, on our FreeBSD install there was no libcurl.

        Often if the executable fails to launch at all (eg is blocked by a security process or has a missing library) the PHP functions don’t always react as expected, so we don't have workarounds in place for all these situations until we encounter them. There was an error message logged in /tmp/zoomoutput on our FreeBSD test but it looks like it isn’t being parsed properly so wasn’t detected.

        Comment


        • #5
          The test box returns "not a dynamic executable" which sounds like a permissions problem. I've given up on trying that one anyway.

          The hosted server returns
          ZoomEngine: signal 11
          So that's some sort of missing library. Libcurl is installed and PHP is compiled with "--with-curl" so that's not it. Any idea which library this might be?

          Regards
          Jim

          Comment


          • #6
            The "not a dynamic executable" sounds like it was trying to be run on a 64bit system that doesn't have the 32bit libstdc libraries installed?

            The signal 11 / segfault should mean that Zoom has at least started to execute, are there are any logfiles present in the temp directory where zoom was installed?

            Comment


            • #7
              The test box has a 64 bit processor, so that's probably it. Oh well, I don't really need that one, it's just convenient for testing.

              The hosted server has a zoomoutput file, but it's empty. There's nothing else -- no log files. I tried creating a blank indexlog.txt for it to use, but it's empty as well.

              Edit: The hosted server is also a 64-bit machine. It looks like that's the problem.

              Regards
              Jim
              Last edited by Kymation; May-13-2014, 01:32 AM.

              Comment


              • #8
                Unfortunately we don't currently have a 64bit Linux build ready to test but we should be releasing one soon.

                Comment


                • #9
                  Looks like I'll have to wait for that. Thanks for all of the help.

                  Regards
                  Jim

                  Comment

                  Working...
                  X