CRON UNIX: faire un bon script php

En mode « URL », tout CRON UNIX tente de télécharger la page.
Ainsi, si aucune information n’est reçue par l’outil de téléchargement, celui-ci considère qu’une erreur est survenue (time-out) et tente à nouveau le téléchargement.
Cela peut avoir des conséquence extrêmement violente comme l’écroulement de la machine ou des erreurs de données.
Aussi, TOUT script php ayant vocation a être utiliser comme CRON ne peut se prémunir du code suivant :

Nous ne pourrons être tenu responsables des dommages occasionnés par un script mal écris. Il en est de la responsabilité du client d’informer son développeur.

Souci de caractères mal encodés

Quand on veut utiliser du texte dans une fonction (style envoyer des mails avec un texte pré enregistré), les caractères se retrouvent mal encodés :

Ex : , l’AŠquipe au lieu de l’équipe.

Pas un souci d’encodage de mail, cherché des heures avec Encoding mais sans succès.
Il suffit juste de ré encoder le texte en UTF8.

 

ASPX – programmer web.sitemap et construire son propre menu

Bonjour,

Après des heures de recherche afin de pouvoir utiliser web.sitemap en mode programmé dans ma master page, je vous livre ici la méthode la plus simple afin de parser le fichier xml :

Tout d’abord le fichier XML web.sitemap

Dans mon cas je ne devais utiliser que url et title, on peut rajouter autant d’infos que vous désirez (description, …)
A savoir, une ligne de titre, ex :

ne doit pas contenir « # » en url par exemple, car si ce même lien se reproduit cela plante, effectivement impossible d’avoir deux liens identiques dans un même fichier de liens.

La partie cs intégrée à ma master page :

Il faut ajouter l’ assembly :

  • System.Xml

Méthode : je lis le premier node parent, et je regarde si il existe des nodes enfants, si oui alors j’affiche tous les enfants.

A savoir, pour checker si une valeur existe utiliser cette méthode :

Prochain cours, génération de web.sitemap et fichier d’indexation google …

Optimisations Merak

Comptes IMAP

Tous les emails rentrent dans /inbox, et il n’est pas bon de laisser des milliers d’emails dans ce dossier qui est fréquemment synchronisé. Donc penser à créer un sous dossier et à y déplacer tous vos anciens mails !

Optimisation logicielles

Anti virus

Vérifier l’anti-virus du poste. Si tous les messages viennent du serveur IceWarp, il est possible de supprimer le contrôle des messages entrants qui ont déjà été contrôlés par le serveur.

Icewarp

Dans la console -> Fichier -> Console API :
c_system_services_smallfilescache_size = 128000000 (mettre 128 mo à la place de zéro) Ceci permet de mettre en cache les fichiers inférieurs à 3 Mo
c_mail_imap_idledisable = vrai (à la place de faux)

Dans la console menu Web -> site Default -> onglet Paramètres : décocher « Maintenir les cnx ouvertes »

IIS7 – mySQL et ASP

Sous 2012 serveur, installer le driver mysql-connector-odbc-5.3.6-winx64.msi, récupérable sur https://dev.mysql.com/downloads/connector/odbc/

NB : testé le connecteur en 32 bits, non installable sous 2012 serveur !

Ensuite passer le pool d’application en 64 bits pour faire tourner le driver en ASP.

Pour vous connecter ce sera donc :

 

WP : sécuriser simplement

Un add on qui ne paye pas de mine et qui fait un boulot d’enfer sur les pages avec authentification, testé et approuvé par nos équipes, je vous présente Cerber :

https://fr.wordpress.org/plugins/wp-cerber/

A installer d’urgence pour tous les possesseurs de Word Press.

Il permet entre autres de casser les brute force sur les page d’accès à l’administration et bloque les IP indésirables.


Un article intéressant résumant les risques des open sources non mis à jour :

http://www.developpez.com/actu/104378/WordPress-est-de-loin-le-CMS-le-plus-cible-par-les-cyberattaques-en-grande-partie-en-raison-du-mauvais-entretien-et-la-negligence-des-webmasters/

MailMessage avec localhost

Méthode très intéressante si jamais le serveur de relais n’est pas joignable. De base tous nos serveurs smtp des machines sont réglés pour relayer les emails via notre serveur de relais, et pour IIS l’envoi de message est donc configuré via localhost.

Le but du jeu est donc de stocker dans un dossier de transit nos emails à envoyer. Si le serveur de relais à un souci, les emails restent stockés et partiront dès que ce dernier sera de nouveau joignable. Voilà, plus possible de perdre l’envoi d’un email dans vos codes !

 

 

Les emails pour les programmeurs, évitons le bannissement !

Les listes noires ou le bannissement de vos serveurs

Pourquoi ?

C’est pour nous permettre de bloquer l’envoi et la réception de mails non sollicités.
Notre serveur de mails interroge par exemple deux listes noires mondiales afin de bloquer ou mettre en spam des messages non sollicités.

Comment on se retrouve inscrit ?

Cela peut être dû :

  • à l’envoi consécutif de 20 mails faux vers Orange ou Free par exemple
  • à l’envoi d’emails de votre part considérés comme du spam par l’opérateur destinataire : à partir de 25 mails par exemple, un FAI vous considère comme un « spammeur »

Résultat

Tous les opérateurs ont le même type de protection que nous, si vous êtes inscrit dans une liste noire, vos emails seront rejetés au moins par 80% de vos destinataires !

Ceux d’entre vous qui ont déjà eu affaire avec ce genre de liste le savent, c’est compliqué et long d’en sortir (jusqu’à 72h pour certaines black Listes).

Comment s’en prémunir ?

  • Bien mettre à jour vos outils open-source (Joomla, phpb forum, os commerce, …)
  • Intégrer un captcha ou autre système de contrôle pour être certain que c’est bien un humain qui fait une action et non un robot.
  • Désinstaller les outils non nécessaires dans les solutions open-source (emailing, webmail, …)
  • Dans vos formulaires, bien vérifier qu’on ne puisse passer des requêtes ou injections.
  • Bien nettoyer vos mailing list : supprimer les emails faux !
  • Mettre un lien de désabonnement programmé, et non un email à répondre (non valide pour certains opérateurs)
  • Bien vérifier la présence d’un return-path valide (email de retour si souci)
  • Pour ceux qui développent en PhP , utiliser la dernière version et activer « mail.add_x_header = On » afin de connaitre le fichier émetteur, fort utile en cas d’envoi de mails non sollicités. Pour ceux qui développent en ASP(X), ajouter éventuellement « urn:schemas:mailheader:Myheader » afin d’y intégrer le chemin du fichier d’envoi.

Comment savoir ?

Voici un lien qui permettra de vérifier l’état de nom de domaine ou de l’ip dans le monde des listes noires, et par la même vérifier l’état de votre domaine : http://mxtoolbox.com/

Convertir decimal en entier pour les paiements sécurisés

Pour tous les paiements sécurisés on envoie les valeurs sous forme d’entier en centimes , ex :

Voici un petit code qui arrondit le montant à deux chiffres après la virgule et vous rend le résultat sous forme d’entier.

 

IIS Rewrite : SEO rewrite language

Voici comment interpréter une url et la transformer