155 lines
4.4 KiB
Plaintext
155 lines
4.4 KiB
Plaintext
README
|
|
======
|
|
Le webservice est basé sur le ZendFramework pour générer les WSDLs.
|
|
|
|
Fichier de configuration
|
|
========================
|
|
La configuration est décomposé en plusieurs fichiers,
|
|
avec adaptation suivant la machine
|
|
- mysql.php
|
|
- smtp.php
|
|
- sphinx.php
|
|
- stockage.php
|
|
|
|
sans adaptation suivant la machine
|
|
- partenaires.php
|
|
|
|
Fonctionnement
|
|
==============
|
|
Obtenir les WSDL
|
|
Pour le service Entreprise
|
|
|
|
- En mode développement : http://hostname/entreprise/version?wsdl-auto
|
|
- Générer le WSDL : http://hostname/entreprise/version?wsdl-generate
|
|
- Utiliser le WSDL généré : http://hostname/entreprise/version?wsdl
|
|
|
|
Pour le service Interne
|
|
|
|
http://hostname/interne/version?wsdl
|
|
|
|
Pour les clients
|
|
|
|
http://hostname/clients/nom_du_client/version?wsdl
|
|
|
|
N.B : Le fichier WSDL est généré automatiquement en appelant
|
|
http://hostname/service?wsdl afin de ne pas provoquer d'erreur
|
|
après une mise en production
|
|
|
|
Pour définir le mode (vhost d'apache)
|
|
SetEnv APPLICATION_ENV "development"
|
|
SetEnv APPLICATION_ENV "production"
|
|
SetEnv APPLICATION_ENV "staging"
|
|
|
|
En appelant l'url http://hostname/service, le contoller de l'application,
|
|
"service" est automatiquement utiliser.
|
|
Tout ce qui est visible dans la class est utilisé par le controller et se
|
|
retrouve visible dans le service (wsdl, requête)
|
|
|
|
Si des fonctions ne doivent pas être rendu visible il faut donc les séparer
|
|
dans un autre controller utilisant une autre class.
|
|
|
|
Pour spécifier un lien vers un fichier ou pour générer un fichier depuis une
|
|
requête SQL à partir de la documentation du service.
|
|
Ajouter dans le docblock :
|
|
- Pour un fichier
|
|
@ref fichier:libellé:{nom_du_fichier.ext}
|
|
- Pour une requête SQL
|
|
@ref mysql:libellé:{nom_du_fichier.sql}
|
|
|
|
Les fichiers a télécharger sont à placer dans le répértoire public/fichier et
|
|
les fichiers sql dans public/sql
|
|
|
|
Configuration PHP
|
|
=================
|
|
apt-get install php5-mysql
|
|
apt-get install php-apc
|
|
apt-get install php5-curl
|
|
|
|
Paquet PEAR
|
|
- Mail
|
|
- Mail_Mime
|
|
|
|
WKHTMLTOPDF
|
|
===========
|
|
apt-get install libXrender1
|
|
apt-get install libfontconfig
|
|
|
|
Configuration VHOST
|
|
===================
|
|
a2enmod rewrite
|
|
|
|
Exemple de vhost en mode développement
|
|
|
|
<VirtualHost *:80>
|
|
ServerName scoresws.sd.dev
|
|
AddDefaultCharset utf-8
|
|
|
|
# Pour la gestion des ports : $_SERVER['SERVER_NAME'], $_SERVER['SERVER_PORT']
|
|
UseCanonicalName On
|
|
UseCanonicalPhysicalPort On
|
|
|
|
DocumentRoot "D:/www/webservice/public"
|
|
SetEnv APPLICATION_ENV "development"
|
|
<Directory "D:/www/webservice/public/">
|
|
DirectoryIndex index.php
|
|
AllowOverride All
|
|
Order allow,deny
|
|
Allow from all
|
|
<IfModule mod_rewrite.c>
|
|
RewriteEngine On
|
|
RewriteCond %{REQUEST_URI} ^/favicon.ico$ [OR]
|
|
RewriteCond %{REQUEST_FILENAME} -s [OR]
|
|
RewriteCond %{REQUEST_FILENAME} -l [OR]
|
|
RewriteCond %{REQUEST_FILENAME} -d
|
|
RewriteRule ^.*$ - [NC,L]
|
|
RewriteRule ^.*$ index.php [NC,L]
|
|
</IfModule>
|
|
</Directory>
|
|
|
|
# Possible values include: debug, info, notice, warn, error, crit, alert, emerg.
|
|
LogLevel debug
|
|
ErrorLog "logs/scoresws.sd.dev-error.log"
|
|
CustomLog "logs/scoresws.sd.dev-access.log" common
|
|
</VirtualHost>
|
|
|
|
|
|
Vhost réel
|
|
|
|
<VirtualHost *:8081>
|
|
ServerName wse.scores-decisions.com
|
|
ServerAlias wse1.scores-decisions.com
|
|
|
|
# Pour la gestion des ports : $_SERVER['SERVER_NAME'], $_SERVER['SERVER_PORT']
|
|
UseCanonicalName On
|
|
UseCanonicalPhysicalPort On
|
|
|
|
ServerSignature Off
|
|
AddDefaultCharset utf-8
|
|
DocumentRoot /home/vhosts/webservice/public
|
|
SetEnv APPLICATION_ENV "production"
|
|
<Directory /home/vhosts/webservice/public/>
|
|
DirectoryIndex index.php
|
|
AllowOverride All
|
|
Order allow,deny
|
|
Allow from all
|
|
<IfModule mod_rewrite.c>
|
|
RewriteEngine On
|
|
RewriteCond %{REQUEST_URI} ^/favicon.ico$ [OR]
|
|
RewriteCond %{REQUEST_FILENAME} -s [OR]
|
|
RewriteCond %{REQUEST_FILENAME} -l [OR]
|
|
RewriteCond %{REQUEST_FILENAME} -d
|
|
RewriteRule ^.*$ - [NC,L]
|
|
RewriteRule ^.*$ index.php [NC,L]
|
|
</IfModule>
|
|
</Directory>
|
|
|
|
# Possible values include: debug, info, notice, warn, error, crit, alert, emerg.
|
|
LogLevel error
|
|
ErrorLog /var/log/apache2/webservice-error.log
|
|
CustomLog /var/log/apache2/webservice-access.log common
|
|
</VirtualHost>
|
|
|
|
|
|
|
|
|