Services webmasters
Partenaires
Jeux concours gratuits
 
Installation
<<<
Intégration avec Apache Configuration à l'exécution
>>>

7.37 Hyperwave
7 Index des fonctions
 Manuel PHP

Introduction
Pré-requis
Installation
->Intégration avec Apache
Configuration à l'exécution
Types de ressources
Constantes prédefinies
A faire
hw_array2objrec
hw_changeobject
hw_children
hw_childrenobj
hw_close
hw_connect
hw_connection_info
hw_cp
hw_deleteobject
hw_docbyanchor
hw_docbyanchorobj
hw_document_attributes
hw_document_bodytag
hw_document_content
hw_document_setcontent
hw_document_size
hw_dummy
hw_edittext
hw_error
hw_errormsg
hw_free_document
hw_getanchors
hw_getanchorsobj
hw_getandlock
hw_getchildcoll
hw_getchildcollobj
hw_getchilddoccoll
hw_getchilddoccollobj
hw_getobject
hw_getobjectbyquery
hw_getobjectbyquerycoll
hw_getobjectbyquerycollobj
hw_getobjectbyqueryobj
hw_getparents
hw_getparentsobj
hw_getrellink
hw_getremote
hw_getremotechildren
hw_getsrcbydestobj
hw_gettext
hw_username
hw_identify
hw_incollections
hw_info
hw_inscoll
hw_insdoc
hw_insertanchors
hw_insertdocument
hw_insertobject
hw_mapid
hw_modifyobject
hw_mv
hw_stat
hw_unlock
hw_who

7.37.4 Intégration avec Apache

L'extension Hyperwave est utilisée de manière optimale lorsque PHP est compilé comme module Apache. Dans ce cas, le serveur Hyperwave sous jacent peut être caché quasiment totalement aux utilisateurs, si Apache utilise son moteur d'écriture. Les explications suivantes vous éclaireront :

Etant donné que PHP avec l'extension Hyperwave et Apache tend à remplacer la solution native basée sur Wavemaster, je vais supposer que le serveur Apache servira seulement d'interface Hyperwave. Ce n'est pas nécessaire, mais cela simplifie grandment la configuration. Le concept est très simple. Premièrement, vous avez besoin d'un script PHP qui évalue la variable $_ENV['PATH_INFO'] et considère que cette valeur est un objet Hyperwave. Appelons ce script 'Hyperwave'. L'URL http://votre.hote/Hyperwave/nom_objet retourne alors l'objet Hyperwave dont le nom est 'nom_objet'. Le script doit alors réagir suivant le type de l'objet. Si c'est un groupe, il devra probablement retourner une liste de fils. Si c'est un document, il pourra retourner son type MIME et son contenu. Une amélioration peut être obtenue en utilisant le moteur de réécriture d'Apache. D'un point de vue utilisateur, il est plus direct si l'URL http://votre.hote/nom_objet retourne l'objet. La règle de réécriture est simple :
Configuration d'Apache pour HyperWave

RewriteRule ^/(.*) /usr/local/apache/htdocs/HyperWave/$1 [L]
Maintenant toutes les URL pointent sur un objet Hyperwave. Cela conduit à un problème simple. Il n'y a pas d'autre façon d'exécuter, c'est-à-dire rechercher, un autre script que ce script 'Hyperwave'. Cela pourra être corrigé avec une autre règle telle que:
Configuration d'Apache pour HyperWave (2)

RewriteRule ^/hw/(.*) /usr/local/apache/htdocs/hw/$1 [L]
Le dossier /usr/local/apache/htdocs/hw sera ainsi réservé pour d'autres scripts et fichiers. Assurez-vous que cette règle est évaluée avant la première règle que nous avons définie. Il y a juste un léger inconvénient : tous les objets Hyperwave qui commencent par 'hw/' seront cachés. Alors, assurez-vous que vous n'utilisez pas de tels noms. Si vous avez besoin d'autres dossiers, par exemple, un dossier d'images, ajoutez simplement d'autres règles. N'oubliez pas de lancer le moteur de réécriture avec
Demarrer les règles de réécriture d'Apache pour HyperWave

RewriteEngine on
Mon expérience m'a montré que vous aurez besoin des scripts suivants :

  • Retourne l'objet lui-même
  • Pour autoriser la recherche
  • S'identifier
  • Choisir une configuration
  • Un script pour chaque fonction supplémentaire, comme afficher un objet, afficher des informations sur les utilisateurs, afficher le statut du serveur, etc...

Une alternative pour le moteur de réécriture est l'utilisation de la directive Apache ErrorDocument , mais sachez alors que ErrorDocument n'effectue pas les redirections de méthodes POST.

<< Intégration avec Apache >>
Installation Hyperwave Configuration à l'exécution
Services webmasters
Les manuels
 
CoursPHP.com - Reproduction interdite -