4 votes

Quel est le meilleur framework PHP gratuit fonctionnant sur un hébergement mutualisé et pourquoi ?

Je n'ai essayé que symfony. C'était un peu délicat (aussi parce qu'il n'y a pas de ligne de commande ou de connexion ssh dans mon plan d'hébergement) de réarranger les répertoires et les liens afin de fonctionner sur mon service d'hébergement, j'ai fait les mêmes trucs sur la version locale pour faciliter le déploiement mais parfois (je ne sais pas si c'est un problème de cache ou quoi) il y avait des résultats différents de la même version fonctionnant sur le serveur et sur ma machine.

Je ne dis pas que j'ai abandonné symfony mais j'aimerais savoir s'il existe quelque chose de mieux avant de continuer à apprendre symfony.

J'utilise un hébergement partagé, donc je ne peux pas utiliser python/asp/tout le reste :D

La question est celle du titre : Quel est le meilleur framework PHP gratuit fonctionnant sur un hébergement mutualisé et pourquoi ?

6voto

jmccartie Points 1864

Comme vous, j'étais à la recherche d'un framework avec des exigences système légères pour m'assurer qu'il fonctionnerait dans mon hébergement partagé. Je viens de commencer à utiliser Codeigniter et je l'adore. L'installation se fait sans effort et il ne nécessite que très peu d'efforts (le cas échéant) de votre service d'hébergement. Vous utilisez PHP 4 ou 5 ? C'est fait. Il est très léger et facile à apprendre.

Exigences du système :

  • PHP version 4.3.2 ou plus récente.
  • Une base de données est nécessaire pour la plupart des applications web. Les bases de données actuellement supportées sont MySQL (4.1+), MySQLi, MS SQL, Postgre, Oracle, SQLite et ODBC.

5voto

David Heggie Points 2255

Nous faisons beaucoup de CakePHP et c'est certainement l'un des meilleurs frameworks MVC de type Rails pour PHP.

Bien que nous n'ayons pas tendance à déployer des comptes d'hébergement partagé, il est parfaitement possible de le configurer pour qu'il fonctionne avec un hébergement partagé assez standard, bien que vous ne trouviez pas beaucoup de documentation à ce sujet.

En supposant que vous disposiez d'un hébergement partagé assez standard, avec votre dossier webroot principal dans /home/username/public_html, vous devez configurer l'environnement CakePHP de la manière suivante :

/home
  |
  /cakephp - complete copy of default cake folder
  |          with /cake, /app, /vendors etc left untouched
  |
  /public_html - default shared webroot folder
  |              place your customised cake /webroot folder in here with
  |              index.php, /css /js folders etc
  |
  /app - place your customised cake /app folder here, without the /webroot
         contains your /controllers, /models etc folders

Modifiez ensuite votre fichier public_html/index.php pour qu'il contienne les noms de dossiers corrects :

if (!defined('ROOT')) {
    define('ROOT', '/home/app');
}

if (!defined('APP_DIR')) {
    define('APP_DIR', basename(dirname(dirname(__FILE__))));
}

if (!defined('CAKE_CORE_INCLUDE_PATH')) {
    define('CAKE_CORE_INCLUDE_PATH', ROOT . DS . 'cakephp');
}

C'est un peu compliqué, mais cela fonctionne, et cette méthode a l'avantage de vous permettre de mettre à jour votre dossier de bibliothèque cakephp sans affecter vos dossiers /app et /public_html personnalisés.

4voto

DavidWinterbottom Points 2632

Je suis un fan du Zend Framework mais j'ai récemment eu des problèmes de performance avec une application ZF déployée dans un environnement d'hébergement partagé.

Étant donné que l'environnement PHP de l'hébergement partagé utilise safe_mode y open_basedir (comme beaucoup d'autres le feront), cela impose une pénalité considérable en termes de performances à tous les utilisateurs de l'application. require y include (il y en a énormément dans une application Zend Framework modérée). Je trouve que le rendu de la page prend environ 5 secondes sans appel à la base de données. KCacheGrind indique que ce goulot d'étranglement est dû au grand nombre d'appels à Zend_Loader qui est un symptôme du grand nombre de fichiers inclus.

En fait, si vous utilisez votre propre serveur où ces mesures de sécurité ne sont pas en place, et que vous utilisez un cache de code optique tel que xcache permettrait de résoudre ces problèmes.

Il convient de mentionner que le déploiement d'applications ZF sur un hôte partagé n'est pas trop problématique, si ce n'est qu'il faut manipuler légèrement votre structure de dossiers si vous n'êtes pas en mesure de créer des dossiers au-dessus du dossier lisible par le monde. Souvent, vous finissez par placer tous les dossiers d'application dans ce dossier.

2voto

Bob Somers Points 4186

Les deux CodeIgniter y LightVC ne nécessitent aucune configuration en ligne de commande. Il suffit de télécharger le code du framework avec votre application et vous êtes prêt à partir.

1voto

Alfred Points 32190

Rasmus Ledorf (créateur de php) a testé les performances de tous les frameworks et la plupart d'entre eux ne sont pas très performants. Il a recommandé l'utilisation de codeigniter( http://codeigniter.com/ ) que j'ai également aimé parce que la performance était bonne.

Voir http://hublog.hubmed.org/archives/001748.html pour accéder aux vidéos/diapositives de sa présentation, que j'ai trouvée très intéressante.

Récemment, j'ai également découvert le cadre d'encastrement( http://www.recessframework.org/ ) que j'apprécie également, mais je n'ai pas encore essayé de comparer les performances de ce cadre comme l'a fait Rasmus dans sa présentation.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X