Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/07/2007, 14h45   #1
Nouveau Membre du Club
 
Inscription : mars 2007
Messages : 65
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 65
Points : 25
Points : 25
Par défaut Déploiement application PHP

Bonjour
Comment doit-on s'y prendre pour déploier une application php fraichement développée?
Faut-il simplement copié collé les fichiers ? Y a t-il des framework open source qui gère le déploiement ?
Le seul que j'ai vu c'est celui proposé par Zend, il a l'air ok mais payant!!!

merci pour vos suggestions
jilham est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 15h18   #2
Membre actif
 
Homme
Développeur Web
Inscription : juillet 2007
Messages : 194
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 33
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : juillet 2007
Messages : 194
Points : 189
Points : 189
Ben si ton appli marche sans framework, il suffit de mettre les fichiers sur un serveur web.
Et bein évidaament créer ta bd si tu en utilise une.
metfan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 17h14   #3
Nouveau Membre du Club
 
Inscription : mars 2007
Messages : 65
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 65
Points : 25
Points : 25
je vais reformuler :
Je développe sur une machine A - j'ai ma propre configuration apache.
Je teste en local et tout fonctionne

Je veux mettre mon application en production sur une machine B où apache et php sont installés (meme version qu'en développement).
-> Si des paramètres de configuration ont été rajoutés ou modifiés - cela signifie qu'il faut faire les modifications à la main !
-> si de nouvelles librairies sont utilisées - il faut que je les rajoute aussi!
--> et il en va de même pour les sources.

Finalement à chaque mise en production, il faut maitriser l'ensemble du déploiement et cela peut générer de nombreuses erreurs d'inatentions.

Ma question est donc la suivante quels outils existent pour rendre le processus plus facile?
(du genre déploiement à la tomcat : on installe un war (sources) et les fichiers de configurations correspondant on lance et tout est ok!)
jilham est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 09h47   #4
Membre actif
 
Homme
Développeur Web
Inscription : juillet 2007
Messages : 194
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 33
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : juillet 2007
Messages : 194
Points : 189
Points : 189
Question intérésssante, je developpe directement sur le serveur de prod, ouai je sis c'est pas bien.
Je n'ai jamais entendu parler d'outil de déploiement pour PHP.
metfan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/08/2007, 08h54   #5
Membre chevronné
 
Avatar de Dia_FR
 
Homme Aurélien
Développeur Web
Inscription : avril 2006
Messages : 510
Détails du profil
Informations personnelles :
Nom : Homme Aurélien
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2006
Messages : 510
Points : 643
Points : 643
perso j'utilise subversion et rsync

on développe sur le serveur de dev (logique...), on fait des commit svn réguliers (ça fait une save et permet le travail en commun plus aisé) et on déploie en prod en synchronisant les dossiers avec rsync (utiliser cygwin si vous êtes sous windows)

dernièrement on s'est fait une appli PHP qui simplifie toutes les étapes qu'on doit faire normalement à la main (exécution de commandes), mais ça c'est encore une autre histoire
__________________
Dia [ Page DVP ] [ Blog ] [ Site pro ]
Dia_FR est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/08/2007, 16h38   #6
Nouveau Membre du Club
 
Inscription : mars 2007
Messages : 65
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 65
Points : 25
Points : 25
merci Dia_FR pour l'infos, effectivement ça à l'air faisable avec rsync (en plus je connaissais CVS mais pas son successeur svn )

Quelqu'un procède t-il différement?
jilham est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/10/2008, 17h06   #7
Nouveau Membre du Club
 
Développeur Web
Inscription : août 2005
Messages : 50
Détails du profil
Informations personnelles :
Localisation : Canada

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : août 2005
Messages : 50
Points : 28
Points : 28
Envoyer un message via MSN à lehic Envoyer un message via Skype™ à lehic
J'ai le même problème.
Nous avons 3 plateformes, dev - test - prod, et en +, nous utilisions svn
Quand les développeurs font une realise d'une application php, nous faisons un commit sur svn, en suite on déploie d’une manière manuelle l’application sur le serveur de test :
• Envoyer les fichiers avec ftp
• Exécuter des requêtes sql pour mettre à jour la BD
Le QA teste l’application, et après validation en redéploye notre application (Fichiers et SQL) sur le serveur de prod.
Je cherche à automatiser le déploiement, la méthode de subversion et rsync est une bonne solution pour le déploiement des fichiers, mais il reste à exécuter les requêtes SQL.
Donc, soit je trouve un outil qui me permet de construire un module de déploiement (Fichiers et SQL), soit nous allons développer notre propre application de déploiement, mais avant j’aimerai être sure qu’une telle application n’existe pas.
lehic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/10/2008, 16h26   #8
Membre actif
 
Inscription : août 2005
Messages : 405
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 405
Points : 178
Points : 178
bonjour,

Ce poste m'intéresse.

Je développe actuellement sur php / mssql sur un serveur LAMP trustix.

Il existe trois serveur un de developpement, un de test et un de production.
En fait il s'agit du même serveur mais il y a un répertoire pour chaque étape dans le répertoire /home/httpd.

Pour permettre au code d'être identique quelque soit le serveur mes prédécesseurs utilise cette petite astuce dans le fichier de connexion sql :

Code :
1
2
3
//Serveur actuel, pour selectionner la base
$serveur=explode(".",$_SERVER['SERVER_NAME']);
$serveur=$serveur[0];
.

ainsi quand je fait appelle à une procédure stockée je la préfixe avec le nom du serveur actuellement utilisé

Ce qui implique que toute ma base de donnée est dupliquée en trois fois sur mon serveur mssql. Idem pour les procédures _stockées avec un format $server_lenomtable ou $serveur_lenomProcedureStocke.

Et je me pose d'ailleur cette question comment vais-je copier les tables et les procédures stockées pour pouvoir ensuite les renommer en fonction du serveur et surtout changer le nom des tables utilisées dans chaque requêtes.

Je vais donc suivre ce post avec interet

++ all
narutobaka est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/11/2008, 17h40   #9
Nouveau Membre du Club
 
Développeur Web
Inscription : août 2005
Messages : 50
Détails du profil
Informations personnelles :
Localisation : Canada

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : août 2005
Messages : 50
Points : 28
Points : 28
Envoyer un message via MSN à lehic Envoyer un message via Skype™ à lehic
Après une recherche sur internet, je n'ai pas trouvé un outil qui fait du déploiement de fichier et exécution de requêtes SQL. Nous avons donc décidés de développer un scripte qui sera utilisé conjointement avec SVN pour le déploiement de nos applications sur les différentes plateformes (Test et Prod).

L’idée est simple, nous avons ajoutés un répertoire SQL dans notre TRUNK, dans ce dernier, nous ajoutons un fichier texte qui porte comme nom, le numéro de version de la release en cours, ce fichier, contiendra toutes les requêtes SQL qui touche sur soit, la structure de la base, soit les données. Exemple, si actuellement on développe la version 2.5 de notre application, dans le répertoire SQL, il y a un fichier 2.5.sql avec toutes les modifications au niveau de la base de données.

Notre scripte écrie en php, nous permet pour un premier temps, de naviguer sur notre serveur SVN, pour sélectionner le projet et la version que nous voulons déployer, en suite, grâce aux commandes de svn, le scripte construit un zip avec les fichiers a déployer avec le fichier sql a exécuter lord du déploiement, et a la fin, il déploie l'application sur les différentes plateformes via FTP et exécute le fichier SQL. Avec ce procédé nous avons industrialisé le déploiement de nos applications en prenons en charge les modifications qui doivent être apportées au niveau de la base de données.

Espérant que mon retour d’expérience sur ce sujet vous aidera
lehic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/11/2008, 03h14   #10
Futur Membre du Club
 
Inscription : septembre 2005
Messages : 31
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 31
Points : 15
Points : 15
Pour en revenir à la question première, l'abstraction PDO est une bonne solution pour déployer son application facilement sur un serveur SQL différent.

Et pour ce qui est de la config PHP et Apache à conserver lors d'un déploiement, une solution serait de les mettre dans le .htaccess à la racine
k-nine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/11/2008, 11h26   #11
Nouveau Membre du Club
 
Inscription : mars 2007
Messages : 65
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 65
Points : 25
Points : 25
Oui en effet, pour la couche de données on peut utiliser un outil de mapping relationnel qui permet de gérer les données en base sous forme d'objet PDO simplement à l'aide de fichier xml qui décrit la structure des tables.

Pour le htaccess, j'ai pas tout saisi en revanche..
jilham est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/11/2008, 13h19   #12
Futur Membre du Club
 
Inscription : septembre 2005
Messages : 31
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 31
Points : 15
Points : 15
Dans le htaccess, on peut inclure une config php spécifique comme par exemple :
Code :
1
2
  php_value session.use_trans_sid 0
  php_value register_globals 0
Par contre dans la config apache il faut bien spécifier :
Code :
1
2
3
<Directory "/var/www/htdocs">
   AllowOverride Options
</Directory>
k-nine est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h23.


 
 
 
 
Partenaires

Hébergement Web