Tomcat et PHP

Informations et questions à propos de Jakarta Tomcat en général.

Modérateur : Modérateurs

Avatar de l’utilisateur
Hulk
Membre
Membre
Messages : 15
Inscription : lun. 20 févr. 2006, 17:36

Messagepar Hulk » lun. 20 févr. 2006, 17:50

Bonjour, nouvel arrivant dans la famille, je vous adresse donc ce 1er message !

J'ai fait le tour de bcp de forum, ecumé de nombreux sites sans trouver comment resoudre mon pb.

je developpe, sur l'Intranet d'une societé, une base de connaissance en HTML via FrontPage avec un serveur TomCat 5.5.15

Je voudrais que les personnes, qui la consulte, puissent m'envoyer des remarques via un formulaire qui existe deja. J'ai vu que l'on pouvait faire cela a l'aide de PHP, j'ai donc l'interpreteur mais impossible d'obtenir le moindre resultat.

Pourriez vous m'indiquer une marche a suivre pour que le PHP soit correctement interprété !?

Merci d'avance pour vos nombreuses réponses.

Hulk.

Avatar de l’utilisateur
LFD
Nouveau membre
Messages : 5
Inscription : mer. 22 févr. 2006, 15:45

Messagepar LFD » mer. 22 févr. 2006, 15:53

Salut hulk,
je viens de passer par là aussi et j'ai finalement réussit à intégrer php5.1.2 avec une version de Tomct Jakarta 4.1...

Voici une doc que je viens d'écrire pour ma boite en Finlande. C'est en anglais je suis désolé mais ca peut toujours aider:

Instructions:

1. Download the latest version of php (or earlier if needed) at <a href='http://www.php.net' target='_blank'>http://www.php.net</a> in download section.
The version that I used is the 5.1.2 that you can find here:
<a href='http://www.php.net/get/php-5.1.2-Win32.zip/from/a/mirror' target='_blank'>http://www.php.net/get/php-5.1.2-Win32.zip/from/a/mirror</a>

2. Download the latest version of PECL modules. The version has to be the same than the php version, here 5.1.2.
<a href='http://www.php.net/get/pecl-5.1.2-Win32.zip/from/a/mirror' target='_blank'>http://www.php.net/get/pecl-5.1.2-Win32.zip/from/a/mirror</a>

3. Unzip php 5.x zip file on the disk, here C:\php

4. Unzip pecl 5.x zip somewhere on your disk; we will need only few files.

5. Create the environment variable for php. (Tip: right click on My Computer icon on the desktop):
- First create PHP_HOME variable (here: value = C:\php)
- Then add ?;%PHP_HOME%? at the end of the PATH variable
- You can check the result: start > run > cmd > php ?v . It should display the version of php. If not check your settings.

6. Copy the file php.ini-dist, in C:\php as php.ini

7. Uncomment the line below (remove the semi-colon at the beginning of the line) in php.ini around line 570. If the line doesn?t appear create it. It will allow the php_java.dll library to be loaded.
;extension=php_java.dll

8. Set the path of the extension libraries folder ?ext/? in the same file around line 460

9. Check if the php_java.dll file is present in the %PHP_HOME%/ext/ folder. If not copy it from the pecl 5.x unzipped folder.

10. Copy the file php_java.jar from pecl 5.x unzipped folder, in C:\php.

11. Create the folder C:\jar, it will make things simpler, and copy the file phpsrvlt.jar inside.

12. Exctract / Unjar this file by using the command prompt:

- Start > run > cmd > cd \
- C:\>cd jar
- C:\jar>jar xvf phpsrvlt.jar



13. Modify both files C:\jar\net\php\reflect.properties and C:\jar\net\php\servlet.properties to change the line library=php5srvlt to library=php5servlet since the DLL to be loaded is named php5servlet.dll. . This has no connection with the name of the jar file which can be anything.

14. Re-create the jar file :
- C:\jar>jar cvf phpsrvlt.jar net/php/formatter.class net/php/reflect.class net/php/servlet.class net/php/reflect.properties net/php/servlet.properties

15. Copy the resulting jar in C:\tomcat\common\lib

16. In C:\tomcat\webapps create a folder called test for example.

17. Create WEB-INF directory under test

18. Create web.xml under WEB-INF with the following contents:


<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<servlet>
<servlet-name>php</servlet-name>
<servlet-class>net.php.servlet</servlet-class>
</servlet>
<servlet>
<servlet-name>php-formatter</servlet-name>
<servlet-class>net.php.formatter</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>php</servlet-name>
<url-pattern>*.php</url-pattern>
</servlet-mapping>

<servlet-mapping>
<servlet-name>php-formatter</servlet-name>
<url-pattern>*.phps</url-pattern>
</servlet-mapping>
</web-app>

19. Create a php file like info.php, in C:\tomcat\webapps\test with the following content:
<?php
phpinfo();
?>

20. Uncomment the servlet (remove the <!-- and -->) in C:\tomcat\conf\web.xml, around line 250 and the servlet-mapping around line 300

21. Start Tomcat server

22. Open your browser and go to <a href='http://localhost:8080/test/info.php' target='_blank'>http://localhost:8080/test/info.php</a>

23. Ensure that there are no errors displayed. Instead you get an informative screen with php version information and whole lot of details

La procédure est normalement valide même avec des version supérieur de Tomcat

Bon courage

Avatar de l’utilisateur
Hulk
Membre
Membre
Messages : 15
Inscription : lun. 20 févr. 2006, 17:36

Messagepar Hulk » jeu. 23 févr. 2006, 14:52

Salut LFD !

Déjà, merci pour cette procédure, cela m'a bien aidé !

J'ai suivi tous les points a la lettre.
Cependant, il reste un point que je voudrais éclaircir, le n° 20 !
Je crois qu?il y a des différences dans les lignes, du coup je ne sais pas quelle servlet décommenter ?

Un dernier petit coup de pouce ? :D

Mais un grand merci a toi, ça faisait longtemps que je galerais !

Hulk (apprend le php)

Avatar de l’utilisateur
LFD
Nouveau membre
Messages : 5
Inscription : mer. 22 févr. 2006, 15:45

Messagepar LFD » ven. 24 févr. 2006, 12:33

Salut hulk,

alors, the servlet que tu dois dé-commenter est le cgi

<servlet>
<servlet-name>cgi</servlet-name>
<servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>6</param-value>
</init-param>
<init-param>
<param-name>cgiPathPrefix</param-name>
<param-value>WEB-INF/cgi</param-value>
</init-param>
<load-on-startup>5</load-on-startup>
</servlet>

puis dé-commente:
<servlet-mapping>
<servlet-name>cgi</servlet-name>
<url-pattern>/cgi-bin/*</url-pattern>
</servlet-mapping>

un peu plus bas.

Ca va en fait activer le cgi (perl par defaut) qui est inactif par défaut.
Si tu créés un dossier cgi dans WEB-INF tu dois être capable de mettre des cripts qui seront donc sécuriser.
Les étapes précédentes ajoute donc l'interpreteur php au cgi.

Voila, la vie devrait être belle après tout cas.

Bon courage et bon php

Damien

Avatar de l’utilisateur
Hulk
Membre
Membre
Messages : 15
Inscription : lun. 20 févr. 2006, 17:36

Messagepar Hulk » mar. 28 févr. 2006, 15:42

Bon, ba je jete l'eponge, ca marche pas, je dois avoir deux mains gauche et que des pouces.

J'ai tout suivi de A à Z, enfin de 1 à 23, j'ai decommanté la servlet CGI dans le web.xml du dossier conf de tomcat mais rien n'y fait ! tomcat n'interprete toujours pas le php.

Quand je fais le test <a href='http://localhost:8080/test/info.php' target='_blank'>http://localhost:8080/test/info.php</a>, il me marque : impossible d'afficher la page et mon seveur tomcat s'arrete ... va comprendre Charles.

'Tite question tout de meme, le chemin ou je crée le dossier Test c'est bien : C:\tomcat\webapps
ou
C:\tomcat\webapps\ROOT
???

Encore merci !

Hulk alias Patrice.

Avatar de l’utilisateur
Hulk
Membre
Membre
Messages : 15
Inscription : lun. 20 févr. 2006, 17:36

Messagepar Hulk » mar. 11 avr. 2006, 12:54

Bonjour chers amis !

Je vois que le sujet intéresse vu le nombre de lectures.

Est ce que quelqu'un aurai testé la méthode et chez qui cela fonctionne.

La solution que j'ai trouvé consiste en l'installation d'un serveur Apache 2.0.55 avec qui e php est correctement interprété.

Je voudrais n'avoir qu'un seul serveur (Tomcat en l'occurrence) !

Merci pour vos propositions et/ou vos témoignages.


@++


The Incredible Hulk.

Avatar de l’utilisateur
ankou82
Nouveau membre
Messages : 2
Inscription : jeu. 20 avr. 2006, 11:33

Messagepar ankou82 » jeu. 20 avr. 2006, 11:38

bonjour

tu as oublié une chose

Extract php5servlet.dll from the PECL zip file to c:\php.

et la ca marche

Avatar de l’utilisateur
Hulk
Membre
Membre
Messages : 15
Inscription : lun. 20 févr. 2006, 17:36

Messagepar Hulk » lun. 24 avr. 2006, 12:16

Bonjour ankou82 !

Deja merci de t'etre interessé à mon problème.

Aprés avoir refait la manip une n-ième fois, je te confirme que le fichier php5servlet.dll à bien été extrait du zip PECL et placé dans le répertoire d'install de php.

Peut être une autre idée ...


Patrice.

Avatar de l’utilisateur
JamesPatageule
Nouveau membre
Messages : 4
Inscription : mar. 02 mai 2006, 13:37

Messagepar JamesPatageule » mar. 02 mai 2006, 13:39

Tout d'abord merci a vous car c'est PILE POIL ce que je cherchais !!!

J'ai tout suivit a la lettre et j'obtient une erreur :

Code : Tout sélectionner

type Rapport d'exception

message

description Le serveur a rencontré une erreur interne () qui l'a empêché de satisfaire la requête.

exception

javax.servlet.ServletException: L'exécution de la servlet a lancé une exception


cause mère

java.lang.UnsatisfiedLinkError: send
   net.php.servlet.send(Native Method)
   net.php.servlet.service(servlet.java:190)
   net.php.servlet.service(servlet.java:214)
   javax.servlet.http.HttpServlet.service(HttpServlet.java:802)



Pouvez vous m'aider SVP ??? MERCI d'avance !!!

Avatar de l’utilisateur
Hulk
Membre
Membre
Messages : 15
Inscription : lun. 20 févr. 2006, 17:36

Messagepar Hulk » mar. 02 mai 2006, 17:28

Salut JamesPatageule ! Pas mal le pseudo ...

Bref !

As tu au moins la page info.php qui s'affiche correctement !?
Parce que moi j'ai rien du tout, quand j'essaye d'afficher la page :

<a href='http://localhost:8080/test/info.php' target='_blank'>http://localhost:8080/test/info.php</a>

Le serveur Tomcat s'arrete c'est tout, ma page reste blanche ...
J'ai recommencé la procedure des 10zaines de fois sans rien obtenir de plus.


Dernière chose, d'où provient ce rapport d'erreur ?




@+, bon courage, Patrice.

Avatar de l’utilisateur
JamesPatageule
Nouveau membre
Messages : 4
Inscription : mar. 02 mai 2006, 13:37

Messagepar JamesPatageule » mer. 03 mai 2006, 8:07

Salut ...

Pour ma part lorsque j'ouvre la page info.php j'ai droit a la magnifique erreur JAVA citée plus haut !!!

Je rame HELP ME !!!!

Avatar de l’utilisateur
Hulk
Membre
Membre
Messages : 15
Inscription : lun. 20 févr. 2006, 17:36

Messagepar Hulk » mer. 03 mai 2006, 9:50

Salut.

Bon je suis rassuré je suis pas le seul à ramer. :P

En résumer, la procédure ne marche pas, c'est peut être rien mais le faite est que l'on n'arrive pas a ce que Tomcat interprète les pages PHP.


Si quelqu'un de plus caler que moi (c'est pas très dur certes ...) pouvait ce pencher sur le problème, je pense que cela retirerai les épines de plusieurs pieds.

Encore merci pour votre participation a la résolution de ce mystère !

Bon courage aux rameurs, @++ :D

Patrice.


PS: Au faite, il est fameux ce Forum !!! J'adore li Forum.

Avatar de l’utilisateur
Hulk
Membre
Membre
Messages : 15
Inscription : lun. 20 févr. 2006, 17:36

Messagepar Hulk » jeu. 04 mai 2006, 12:57

Coucou c'est re-moi ! J'empecheur de ramer en rond ...

CA MARCHE !

Le problème est qu'en bidouillant tout et n'importe quoi on ne sais plus ce que l'on a fait.

Je pense et penche toute fois sur le fait que le PHP doit etre installer a la racine de C: et dans un repertoire php.

C:\php (comme dans la procedure ... :unsure: )

J'ai egalement rajouté une clé de registre que je pense etre inutile :

HKEY_LOCAL_MACHINE\SOFTWARE\PHP\IniFilePath


Voilà, enfin j'y suis arrivé ...... B)

Avatar de l’utilisateur
Hulk
Membre
Membre
Messages : 15
Inscription : lun. 20 févr. 2006, 17:36

Messagepar Hulk » jeu. 04 mai 2006, 12:59

Ah ouai, la valeur de la clé : le chemin d'install de PHP soit :

C:\php


@++ les p'tits loups et bon courage pour la suite.



The incredible Patrice ...

Avatar de l’utilisateur
JamesPatageule
Nouveau membre
Messages : 4
Inscription : mar. 02 mai 2006, 13:37

Messagepar JamesPatageule » ven. 05 mai 2006, 8:58

Bon maintenant que chez toi ca marche tu va pouvoir aider ...

J'ai rajouté la clé en valeur chaine ... mon chemin a moi est D:\PHP\ ...

Et ca marche pas mieux ^^

Grrrrrrrr toujours cette erreur JAVA ...

Une idée svp ???


Revenir vers « Général »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 2 invités