Archived

This forum has been archived. Please start a new discussion on GitHub.

ICE PHP5 Server start???

Hello,

I've ICE-PHP on Windows 2000 "running".
Java ICE is running great !!
But PHP doesn't.
My Windows install way:

1. ICE Java is running
Variables:
ICEJ_HOME=C:\Ice-2.1.2\
ICE_HOME=C:\Ice-2.1.2\

CLASSPATH=C:\Ice-2.1.2\lib;C:\Ice-2.1.2\lib\Ice.jar;C:\Ice-2.1.2\lib\db.jar;classes;C:\Programme\Java\jdk1.5.0

2. Install Pyton
3. Install Apache 2
4. Install PHP5
5. test it, running ok
6. extracting ICE-PHP to C:\IcePHP-2.1.2
7. add it to the path variable (C:\IcePHP-2.1.2)
8. add to the PHP.ini:
extension = php_ice.dll

[Profile1]
ice.config=C:/PHP/profile1/ice.cfg
ice.options="--Ice.Trace.Network=0 --Ice.Warn.Connections=0"

10. copy:
php_ice.dll
to
c:\winnt

11. start the C:\IcePHP-2.1.2\allTests.py
12. get the errors:


*** running tests in .\test\Ice\operations
tests with regular server.
starting server... failed!
test in .\test\Ice\operations failed with exit status 1

C:\IcePHP-2.1.2>

13. If I run the run.py from folder exeptions:

C:\IcePHP-2.1.2\test\Ice\exceptions>run.py
tests with regular server.
starting server... failed!

14. No luck

15. But the ICE extesion is visible registed at PHP by using the phpinfo()
also the profile
15. If I start the hello example server from:
C:\Ice-2.1.2\demoj\Ice\hello
and add the PHP hello example to the web http root
then I've seen the page with the options:
modes, options and the say hello and shutdown button.
But I can't send something to the hello server, no response

Which server I`ve to start to execute the py scripts successfully ???
Further how is it possible to start the demo files and others.?
Are there some other things to think about?

Please I need serious help for it !!!
Also for the last thread with the PHP4->PHP5 update.

Please

Greetings
surfer

Comments

  • mes
    mes California
    Hi,

    Before you can run the IcePHP tests, you need to modify the php.ini file in each test directory to add the following line:

    extension = php_ice.dll

    Furthermore, you must have Ice for C++ installed and have built the C++ tests, because the IcePHP test clients require the C++ test servers. Set ICE_HOME to the Ice for C++ directory, and update PATH to include the C++ bin directory.

    Regarding the hello demo: You should be able to use the IceJ hello server. If the server is running on the same host as Apache/PHP, then no additional steps should be necessary. If the server is on a different host, then you'll need to edit hello.php and revise the stringified proxy to include the proper server host information.

    If the PHP hello client encounters a failure, it will display the exception information. If you can show us the exception, we can try to help you get it working.

    Take care,
    - Mark
  • Its running !!!

    Hello and thank you very much !!!!!!!!!!

    I forgot to add the line :
    ice.slice=C:/Ice-2.1.2/demophp/Ice/hello/Hello.ice
    to the PHP.ini file.
    Now it is running.
    Great in normal function !!!!!!!!!!!!!!!!

    But the ssl doesn't.
    like:
    http://www.zeroc.com/vbulletin/showthread.php?t=1540&highlight=php+ssl

    I've got this error message:
    Status:
    
    
    Ice_UnknownLocalException Object
    (
        [unknown] => .\EndpointFactoryManager.cpp:105: Ice::EndpointParseException:
    error while parsing endpoint `ssl -p 10001'
        [message:protected] => 
        [string:private] => 
        [code:protected] => 0
        [file:protected] => C:\Programme\Apache Group\Apache2\htdocs\hello.php
        [line:protected] => 35
        [trace:private] => Array
            (
                [0] => Array
                    (
                        [file] => C:\Programme\Apache Group\Apache2\htdocs\hello.php
                        [line] => 35
                        [function] => stringToProxy
                        [class] => Ice_Communicator
                        [type] => ->
                        [args] => Array
                            (
                                [0] => hello:tcp -p 10000:udp -p 10000:ssl -p 10001
                            )
    
                    )
    
            )
    
    )
    
    
    

    I've edit the PHP.ini file to the following.
    ; from C:\PHP\ext
    ; copy php_ice.dll to C:\PHP\ext
    extension_dir = C:\PHP\ext
    extension = php_ice.dll
    extension = php_openssl.dll
    
    
    
    [Profile1]
    ice.config = "C:/PHP/profile1/ice.cfg"
    ; ice.config = "C:\Programme\Apache Group\Apache2\htdocs\config"
    ice.options = "--Ice.Trace.Network=0 --Ice.Warn.Connections=0"
    ice.slice = "C:/Ice-2.1.2/demophp/Ice/hello/Hello.ice"
    


    After the above error I edit the ice.cfg file with:

    Ice.Plugin.IceSSL=IceSSL:create
    IceSSL.Client.CertPath=../../../certs
    IceSSL.Client.Config=sslconfig.xml
    IceSSL.Server.CertPath=../../../certs
    IceSSL.Server.Config=sslconfig.xml


    If I start the Apache server there are no errors about it.
    In the the explorer i don't get the ok message.

    In the Apache log appears:
    error: exception in IceSSL plug-in:
    .\ConfigParser.cpp:89: IceSSL::ConfigParseException:
    error while parsing sslconfig.xml:
    .\Parser.cpp:370: IceXML::ParserException
    unable to open file `../../../certs/sslconfig.xml'
    [client 127.0.0.1] PHP Fatal error: main() [<a href='function.main'>function.main</a>]: unable to initialize communicator:\n.\\PluginManagerI.cpp:195: Ice::PluginInitializationException:\nplug-in initialization failed: failure in entry point `IceSSL:create' in C:\\Programme\\Apache Group\\Apache2\\htdocs\\hello.php on line 35, referer: http://127.0.0.1/hello.php



    Also if I use the ice.cfg file there is no error but also no status message (ok).
    Like angela said:
    http://www.zeroc.com/vbulletin/showthread.php?t=472&highlight=php+ssl
    -->seams to be a W2k problem ???

    If I disable the ssl option in the hello.php file everything is ok.


    Thanks a lot.
    Greetings surfer
  • Nedd help !!

    Hello,
    has somebody an hint for me?

    Thanks
    surfer
  • benoit
    benoit Rennes, France
    It looks like Apache can't find the SSL configuration file:
    error: exception in IceSSL plug-in:
    .\ConfigParser.cpp:89: IceSSL::ConfigParseException:
    error while parsing sslconfig.xml:
    .\Parser.cpp:370: IceXML::ParserException
    unable to open file `../../../certs/sslconfig.xml'
    

    Try to use absolute paths in your ice.cfg configuration file, this should help.

    Benoit.
  • Solution

    Hello,
    thanks a lot that was it, the real paths:

    Ice.Plugin.IceSSL=IceSSL:create
    IceSSL.Client.CertPath=C:/ICE-2.1.2/certs
    IceSSL.Client.Config=sslconfig.xml
    IceSSL.Server.CertPath=C:/ICE-2.1.2/certs
    IceSSL.Server.Config=sslconfig.xml

    Thank you !!!
    surfer