Bonjour à tous.
Alors voila, je dois réaliser un site web, un truc trop complexe pour être faisable avec un CMS existant, je vais donc devoir le coder moi même. Le hic, c'est que la prog web je n'y connais rien du tout. J'ai une longue expérience de programmeur C, C++ et divers assembleurs pour microcontroleurs, mais le web c'est pas mon truc.
Mon problème majeur c'est la sécurité. Je ne vais pas faire le site d'une banque, mais je sais qu'il y aura toujours quelques kékés qui vont essayer de l'attaquer. Je cherche donc une techno me permettant de coder mon site sans me poser de questions au niveau de la sécurité. Une techno avec laquelle je ne risquerai pas de laisser une injection SQL, ou tout autre type de faille, si je ne fait pas attention à chaque ligne de code. Est-ce que ça existe ? Que me conseilleriez-vous ?
PHP ? Je ne veux surtout pas troller mais j'ai entendu dire que niveau sécu c'est pas encore ça. Java (très utilisé par les boîtes) ? Django (j'aime bien python) ? Ruby on rails ? Autre chose que je connais pas ?
Je vous remercie d'avance pour vos conseils.
# PHP avec PDO
Posté par .O. . Évalué à 2.
Pour éviter les injections SQL, tu peux utiliser la librairie PDO en faisant des requêtes préparées.
http://fr.php.net/manual/fr/pdo.prepared-statements.php
# la reponse est dans l'enoncé
Posté par NeoX . Évalué à 5.
tout comme tu peux le faire en java
le tout etant de le faire dans une techno que tu maitrises
ce sera alors beaucoup plus simple pour toi de le maintenir.
si par contre tu le fais pour une entreprise ou une asso ou un groupe de copain, il faut peut-etre simplement se mettre d'accord (cf le cahier des charges)
perso je fais mes sites en PHP
et comme je code moi meme le moteur de mon site, les risques d'attaques sont faibles car mon moteur ne represente qu'un ou deux sites dans le monde
contrairement à certains CMS qui sont diffusés et utilisés un peu partout.
(toujours le probleme du nombre de part de marché representé par la cible d'une attaque)
[^] # Re: la reponse est dans l'enoncé
Posté par Krunch (site web personnel) . Évalué à 1.
Réutilisable sous licence BSD.
pertinent adj. Approprié : qui se rapporte exactement à ce dont il est question.
# Panacée
Posté par Kerro . Évalué à 3.
Lorsque tu auras trouvé cette miraculeuse technologie te permettant de programmer en fermant les yeux, pense à déposer un brevet. Ton avenir est assuré.
Si possible, étend ta recherche à "Je cherche donc une techno me permettant de coder mon site sans me poser de questions au niveau des bugs. Une techno avec laquelle je ne risquerai pas de laisser un bug ou tout autre type d'erreur de raisonnement, si je ne fait pas attention à chaque ligne de code.".
J'ai une longue expérience de programmeur
C'est clair.
[^] # Re: Panacée
Posté par BAud (site web personnel) . Évalué à 5.
un truc trop complexe pour être faisable avec un CMS existant
qui montre une analyse poussée de l'existant, sans pour autant décrire le besoin...
[^] # Re: Panacée
Posté par B16F4RV4RD1N . Évalué à 5.
Only wimps use tape backup: real men just upload their important stuff on megaupload, and let the rest of the world ~~mirror~~ link to it
# pourquoi pas Wt ?
Posté par cppuser . Évalué à 3.
# du C avec clearsilver
Posté par Bapt (site web personnel) . Évalué à 3.
tu couples ça avec libdbi pour la gestion des bases de données et tu as quelques chose de vraiment top.
http://www.clearsilver.net/
http://tech.groups.yahoo.com/group/ClearSilver/message/857 (pour le fastcgi)
http://libdbi.sourceforge.net/
# Non
Posté par 0xFF . Évalué à 4.
Je ne veux pas faire mon site en C++ sous prétexte que je maîtrise ce langage. Je cherche à utiliser la techno la mieux adaptée. Si je dois apprendre un nouveau langage je le ferai. Je ne suis pas pressé, je prendrai le temps de me documenter à fond sur la techno que je choisirai pour bien comprendre son fonctionnement et savoir comment l'utiliser proprement. Mais il y a tellement de techno disponibles pour faire des sites web, je ne peux pas toutes les tester. C'est pour ça que je vais à la pêche aux avis. Quel techno avez-vous utilisé ? Qu'en avez-vous pensé ? Lesquelles recommandez-vous ?
Aurai-je sous estimé les CMS ? C'est possible, je l'ai dit, le web n'est pas mon domaine. Pour moi un CMS c'est quelque chose de dédié à un besoin précis et donc difficilement adaptable pour faire autre chose. Je dois pouvoir organiser ma base de données comme je veux, et mon site doit pouvoir appeler des programmes présents sur mon serveur et communiquer avec eux. Cela me laisse penser qu'un CMS tout fait n'est pas adapté à mon besoin. Peut être que j'ai tord. Si vous pouvez me donner des noms de CMS capables de faire cela j'en serai ravi.
[^] # Re: Non
Posté par Vincent (site web personnel) . Évalué à 1.
Il y a tellement de CMS différents... tu es sûr d'avoir fait le tour et d'avoir bien testé ?
La plupart des CMS ont des systèmes de modules qui permettent de modifier et d'étendre leur capacités. Il serait plus judicieux et rapide de créer un module adapté à tes besoins.
[^] # cms...
Posté par Octabrain . Évalué à 4.
Ensuite, quand on ne connait pas un domaine (ici la prog web), rentrer dans un projet existant et potentiellement déjà complexe, c'est peut-être pas la meilleure façon de réussir, et en plus c'est carrément pas passionnant.
# Ruby on rails
Posté par yellowiscool . Évalué à 2.
L'avantage de ruby on rails est la rapidité de développement. Et à moins de coder des trucs étranges, pas de problèmes niveau sécurité.
Php, si tu n'utilises pas un framework, tu dois tout coder toi même, ce n'est pas très pratique.
Envoyé depuis mon lapin.
# Turbogears
Posté par GeneralZod . Évalué à 4.
Bien que Django soit un formidable framework web, il a l'inconvénient d'utiliser ses propres composants (ORM, template engine, etc ...) contrairement à Pylons et TG qui réutilisent des briques existantes et plus aisément remplaçables (ORM: sqlalchemy, template: genshi, mako, sécurité: authkit, repoze.who etc ...), ce qui permet de mutualiser un peu plus les connaissances pour des domaines autre que le web.
À mon avis, c'est un léger inconvénient pour les développeurs qui ne font du web que par intermitence, mais si tu as un bon feeling avec Django, ça ne doit pas t'empécher de le choisir.
Sinon, les outils de développement sont agréables (paster, débogueur, etc ..). Si tu cherches un framework plus light, il y a Werkzeug qui est pas trop mal.
Quant à PHP, je n'avais quasiment pas touché depuis PHP4, entre-temps, les versions 5.2 et 5.3 offrent un cadre de développement correct .
PHP n'est pas à négliger, ça reste un langage côté serveur très performant, il y a aujourd'hui pléthore de frameworks modernes permettant de faire des trucs pas trop mal chiadés. Les hébergements sont également moins chers, selon ton cahier des charges, ça peut jouer.
# LA solution à ton problème : Rails
Posté par totof2000 . Évalué à 3.
Si tu connais python, tu n'auras pas du tout de mal à te mettre à Ruby, et Rails te mache plus de 90% du taf, tout en te laissant une marge de manoeuvre suffisante pour faire ce que tu as à faire.
Tu peux trouver de bons bouquins sur Rails, parc contre le premier conseil que je te donnerai c'est de bien vérifier que la version de Rails que tu installe correspond bien à la version de ton bouquin (Rails 2.0 par exemple ajoute des subtilités non comprises par les versions précédentes, et certains bouqins n'ont pas été mis à jour. Fais gaffe j'ai perdu un peu de temps dans mon apprentissage à cause de ce genre de connerie).
L'aide en ligne de Rails est assez bien faite, un peu dur à s'y retrouver au début (j'ai piqué une crise ici même parce que je ne m'y retrouvais pas), mais au final quand on a pris l'habitude, il n'y a pas de problème.
Coté soutien, tu trouveras ici des gens qui pourront t'aider, et il y a des forums Rails. Cependant je trouve que certains contributeurs de ces forums sont parfois des abrutis car répondent carrément à côté de la plaque ou agressent un peu les gens qui posent des questions en pensant qu'ils n'ont pas lu la doc alors que c'est la doc qui n'est pas toujours claire pour les gens qui n'y sont pas habitués ....
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.