Bonsoir,

Voilà, je veux partager avec vous ma vision par rapport a ce que je veux faire dans ma solution les points a développer et ce qui me dérange avec laravel

Je voulais créer une platform avec un system modulaire sous CI apres cela sur laravel en changeant la structure initial de laravel vers une structure que je suggère un peu plus sécurisé et pratique, la structure et simple

config
modules
storage
system
index.php
.htaccess

le répertoire system il contient tout artisan, vendor, app, bootstrap, composer ...etc avec un .htaccess qui contient deny from all :)

j'ai fait tout ce qu'il faut en adaptant l'arravel pour rependre a cette structure et ça fonctionne maintenant, mais le problème, c'est laravel qui avance un peu trop vite donc après quelque temps, nous devons tt refaire si nous voulons avancer ou utiliser des packages un peu plus avancé, autre chose moi je veux installer ma solution dans les serveurs de mes clients donc je dois la crypter une chose qui me paret un peu difficile avec cette structure qui est un peu compliqué.

c'est pour quoi je pense revenir vers CI et implémenter une solution HMVC

En attente de vos commentaire

Cdlt

10 réponses


Salut,

Tu ne précise nul part ce que tu souhaites savoir.

foxmedo
Auteur

Salut,

non en fait j'ai dit que laravel il avance trop vite et que nous devons refaire le travaille a chaque fois pour que nous puissions utiliser les nouveaux packages.

et que je ne sais pas comment crypter le code de laravel pour le proteger

autre chose pour l'avenir si nous parlons d'un plan de 5 ans est il mieux d'utiliser laravel ou CI

moi j'aime bien la façon dont laravel il gere la partie base de données, le routage, la gestion des API mais le CI il reste toujours plus rapide mais moin performent avec les base de données

donc pour commancer mon application est-il mieu d'utiliser laravel ou CI, les mise a jours de laravel vont il me poser des problemes on non ??

Merci

Pourquoi vouloir crypter un code open-source ? Ca n'a aucun sens.
Concernant CI, je ne l'ai jamais utilisé donc je ne pourrais pas te répondre. Mais j'ai envie de te dire que c'est subjectif et que ça dépend grandement du projet. Laravel est assez modulable pour s'adapter à tous les projets, donc il devrait pouvoir convenir.
Après, ce n'est pas parce qu'une nouvelle version sort qu'il te faut absolument l'utiliser. Et ça ne fonctionne pas comme ça d'ailleurs.

foxmedo
Auteur

je vous remerci pour votre réponse, en fait nous voulons crypter notre solution parceque ce n'ai pas du open-source je parle des modules que nous allons developper, sinon nous pourrons pas controler les licences d'utilisation.

avant j'ai utiliser Zend Guard pour crypter mes codes mais je ne sais pas si ça fonctionne avec Laravel ou Non

pour la version moi j'ai crée une platform qui fonctionne tres bien sur L5.1 alors au moment que je voulais passer au 5.4 j'ai eu bp de probleme pour adapter le system.

Il suffit de contrôler l'hébergement, comme ça tu as le contrôle sur ton code et voilà ;)
Sinon, vas faire un tour sur packagist.org voir s'il n'existe pas une solution pour crypter ton code.

Crypter du code c'est complètement contre-productif. Ca peux poser des problèmes de compatibilité sans pas du debug suicidaire. Si tu veux faire un plugins payant, il y a qu'une seule solution c'est une dépendance externe. Pour example regarde les plugin wordpress premium. Après si c'est un plug-in type FOUSER malheuresment impossible de le rendre payant, au risque que les gens mettent le code en ligne?

Meme si on peut pas dire que ca soit du "cryptage" , tu n as qu'a utiliser le framework php phalcon https://phalconphp.com/fr/ qui permet de compiler son php ......

Il éxiste des solutions tel que : http://www.ioncube.com/ ou encore http://www.zend.com/en/products/zend-guard pour obfusquer ton code.

J'ai tout de même plusieurs remarques : la structure de Laravel est très robuste et répond à pas mal de critère de sécurité : http://www.easylaravelbook.com/blog/2015/07/22/laravel-key-security-features/

De changer la structure et / ou le code de laravel sans contribuer au projet originel ouvre la porte à la plus grosse faille connue : l'erreur humaine.
Si une faille est découverte sur Laravel, tu peux être assurée que la communautée corrigera rapidement le souci et deployera une nouvelle version de Laravel. (https://laravel.com/docs/5.4/releases#support-policy)
Toi tu devras, reporter ça sur ton propre code. Avec aucune code review et donc un risque d'erreur non négligeable.

Pour la partie Obfuscation de ton code pour qu'on ne te vole pas. Je ne sais pas quel type de projet tu comptes réaliser, mais très certainements, ton client sera propriétaire du code, et il est évident que c'est des sources qu'il est propriétaire.

Si ce n'est pas le cas, il a interdiction légal d'utiliser sans un contrat. Tu es donc protégé de se point de vue là. Ne complexifie pas tes process de deploiement/développement/maintenance pour une peur dont l'impacte n'est que minime.

foxmedo
Auteur

je vous remercie pour votre retour

Pour l'obufuscation du code, il nous le faut, c'est une licence d'utilisation nous nous développons pas des solutions sur-mesure c'est des produits de la société que nous commercialisions

Chez nous en Afrique les choses ne sont pas les meme ya pas droit d'auteur :) donc le client, il peut copier la solution sur flash disque et la déployer dans un autre endroit sans qu'il te demande la permission et les concurant peuvent commercialiser t'as solution juste en changeant le nom et le theme :( malheureusement, c'est la vérité

Phalcon m'a donné des idées très intéressantes, je vais essayer de les mettre en place.

Mais que pensez-vous si j'utilise des plateformes déjà développées pour gagniez du temps que proposer vous Orchestra ou Cartalyst

Ce que je cherche vraiment un system modulaire stable et évolutif qui me permet de développer ce que je veux, mais on se concentrant sur le business non pas l'outil de travail

Cdlt

Bonjour foxmedo,
pour avoir utilisé des plateformes prédeveloppées , j'ai remarqué que:

  • dès qu'on a besoin de rajouter des fonctionnalités sois -même (pour changer les comportements,....) , on pète une case car on ne comprend pas leur code , on bidouille quelque chose qui va peter lors d'une MAJ,....
  • Parfois, ces outils font perdre plus de temps qu'autre chose
    Je conceille de coder le gros sois même en utilisant des petits packages de github (on évite les trucs un peu trop magique)

Je ne sais pas du tout quel genre de site tu veux mettre en place , mais une configuration de base que j'utilise souvent:

  • materializecss (pour le css , ciao bootstrap)
  • jquery (ou react js pour les gros sites)
  • postgresql pour les bdd (parfois j'utilise mysql , mais moins souvent)
  • phalcon / laravel /ruby on rails (ca depend, mais j'ai un petit faible pour ruby on rails)
  • stripe (pour le payement en ligne (ca prend 15 min a mettre en place si on utilise tout leurs outils (formulaire automatique grace à :stripe checkout js , leur api raccourcie grâce a leur outil php))
  • plein de petit package qui ne devront jamais changer que je pioche dans github

si tu as des questions, n'hésite pas

jc