Huit MAJ à réaliser avec reboot obligatoire.
MAJ Windows
Après les 10 MAJ de la semaine, même motif même punition avec deux MAJ et un reboot à la clé.
Windows moins vulnérable que Mac OS X ou Linux
La National Vulnerability Database vient de publier les chiffres pour 2014. Contrairement aux idées reçues, Windows (toutes versions confondues) s’est révélé moins vulnérable que Mac OS X, iOS ou Linux. Toutefois, Microsoft n’a pas non plus de raison de pavoiser car Internet Explorer est l’application la plus vulnérable, très loin devant les autres.
Découvrir l’article sur : http://www.linformaticien.com/actualites/id/35824/windows-moins-vulnerable-que-mac-os-x-ou-linux.aspx
PHP 5.5 et IIS6 incompatibles
Ne cherchez plus, PhP5.5 ne fonctionne pas sur IIS6, utilisez la version PhP5.4.
IIS6, ISAPI rewrite
301 avec et sans www
Exemple en excluant les stats awstats et tout le dossier admin
|
1 2 3 4 |
RewriteEngine on RewriteCond %{HTTP_HOST} ^domaine\.ext$ [NC] RewriteCond $1 !^(awstats\.pl|admin) RewriteRule (.*) http://www.domaine.ext/$1 [NC,R=301,L] |
Ou pour exclure un dossier
|
1 |
RewriteRule ^(cgi-bin/.+) $1 [NC,L] |
Exemple avec des liens incluant des ?
|
1 2 3 |
RewriteEngine on RewriteCond %{HTTP_HOST} ^jcpoiret.rd-corsica.net$ [NC] RewriteRule ^(.*) http://www.jcpoiret.com%{REQUEST_URI} [NC,R=301,L] |
Changement de dossier
|
1 2 |
#redirecting to another URL RewriteRule ^dossier1/(.*)$ http://www.domaine.com/dossier2/$1 [L,R=301] |
Besoin d’autoriser la redirection seulement si une extension existe :
|
1 2 |
RewriteRule .*.html - [L] RewriteRule .*.asp - [L] |
Forcer le HTTPS
|
1 2 3 |
RewriteEngine On RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^(.*) https://votre_domaine/$1 |
Cherche un mot
|
1 2 3 4 5 6 7 |
<rule name="Dacia" enabled="true" stopProcessing="true"> <match url="^modeles\.php$" ignoreCase="true" /> <conditions logicalGrouping="MatchAll" trackAllCaptures="false"> <add input="{QUERY_STRING}" pattern="marq=Dacia" /> </conditions> <action type="Redirect" url="index.php/autres/dacia" appendQueryString="false" redirectType="Permanent" /> </rule> |
Cherche un mot générique
|
1 2 3 4 5 6 7 |
<rule name="Query String Rewrite" stopProcessing="true"> <match url="^modeles\.php$" ignoreCase="true" /> <conditions logicalGrouping="MatchAll" trackAllCaptures="false"> <add input="{QUERY_STRING}" pattern="marq=([^=&]+)$" /> </conditions> <action type="Redirect" url="index.php/{C:1}" appendQueryString="false" redirectType="Permanent" /> </rule> |
Pour tester le type de redirection, une seule adresse :
http://www.annuaire-info.com/outil-referencement/test-redirection/
http://www.annuaire-info.com/lien-dur-lien-mou/
IIS6 WAMUserName
A la réinjection d’un backup ou changement de nom d’un serveur IIS, l’IWAm d’origine apparaît toujours. Pour ce, supprimez toutes les applications, arrêtez IIS puis dans : c\InetPub\AdminScripts\ lancez la commande suivante :
|
1 |
cscript adsutil.vbs SET W3SVC/WAMUserName IWAM_MachineName |
Si il revient, pensez à supprimer toutes les applications puis relancez l’opération.
Smart Upload, autoriser le téléchargement de gros fichiers
La valeur est définie par AspMaxRequestEntityAllowed dans la metabase de IIS, elle est de base fixée à 200 000.
– asp 0104 : « opération non autorisé ».
– Request object error ‘ASP 0104 : 80004005’
Operation not Allowed
/votre fichier, line de déclaration aspSmartUpload
Voici la procédure à suivre :
– Stopper IIS 6 ! sinon aucune action possible sur la metabase, au pire re démarrer le serveur si vous n’arrivez pas à enregistrer le fichier.
– Voire mieux : clic droit sur « Gestionnaire des Services Internet (IIS) » et cochez l’activation de la modification directe de la metabase le temps de faire votre modif…
– Ouvrir le fichier metabase.xml placé dans c:\windows\system32\inetsrv
– Trouver la ligne AspMaxRequestEntityAllowed et changer la valeur par « 1073741824 » (pour 1Go).
Have a good Upload …
PS : Big dédicasse à nos amis Belges pour leurs investigations, merci Mike.
SPF
Vos emails sont hébergés un autre serveur que celui qui expédie vos emails et vous ne passez pas le barrage du SPF ou du Hello, aucun souci dans la zone DNS on va juste rajouter un ch’tit commentaire :
|
1 |
v=spf1 ip4:IP_officiel_serveur_de_mail a:IP_ou_Domaine_du_serveur_de_relais -all |
Et voilà le travail.
Créer une table ACCESS vide
Voilà un petit code fort pratique en ASP pour copier une table vide avec le nom de votre choix (nom_table). La table VIDE correspond à la table que vous souhaitez copier, bien entendu vous aurez pris soin de la créer avec les champs de votre choix sans données.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
<%@ Language=VBScript %> <% ' === création table M si inexistante ============================================= Set ConBDD = CreateObject("ADODB.Connection") sDB = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\www\chemin_physique_vers_votre_base" conBDD.Open sDB dim rs2:set rs2=createobject("ADODB.recordset") nom_table = DatePart("m",Date()) &"_"& DatePart("yyyy",Date()) flag_er=True rs2.open conBDD.OpenSchema (20) do while not rs2.eof if rs2(3)= "TABLE" then if rs2(2)= nom_table then flag_er=False: exit do end if end if rs2.movenext loop rs2.close if flag_er then conBDD.execute "SELECT * INTO " & nom_table & " from VIDE;" ' table vide avec les champs prédéfinis rs2.open "select * from STATS order by id_stat", conBDD,1,2 rs2.addnew rs2("stat_table") = nom_table rs2.update rs2.close end if ' fermeture connexion set rs2=nothing: set rs=nothing conBDD.Close '---- Détermine si l'année est bisextiles ou pas ---- Function BisexYear(WhichYear) If WhichYear/4=Int(WhichYear/4) Then BisexYear=True Else BisexYear=False End If End Function '---- Le nombre de jours dans un mois ---- Function xDaysIn(WhichDate) Dim xdays xDays=Array("","31","","31","30","31","30","31","31","30","31","30","31") If Month(WhichDate)=2 Then If BisexYear(Year(WhichDate))=True Then xDaysIn=29 Else xDaysIn=28 End If Else xDaysIn=xDays(Month(WhichDate)) End If End Function %> |
PS : Vous noterez deux petites fonctions capables de déterminer si l’année est bissextile et le nombre de jours dans un mois.
Smartp Upload, exemple d’utilisation
Un petit exemple simple d’utilisation de smart upload :
|
1 2 3 4 5 6 7 |
<form method="post" action="tapagedetraitement.asp" ENCTYPE="multipart/form-data" id=form1 name=form1> <table width="100%" border=0> <tr><td align=center><input type="file" name="fichier" class=form></td></tr> <tr><td> </td></tr> <tr><td align=center><input type="submit" value="Enregistrer" class=envoi2 name=submit></td></tr> </table> </form> |
La page de traitement :
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
cheminPDF = Server.MapPath("download/") &"\" Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload") mySmartUpload.Upload For each file In mySmartUpload.Files If not file.IsMissing Then nom_ext = file.FileExt ' extension nom_fichier = file.FileName ' nom complet if lcase(nom_ext)="pdf" then ' rec --------------------------------------------------------- file.SaveAs cheminPDF & nom_fichier mem="": msg="<b><font color=green>> Votre fichier est correctement enregistré.</font></b>" else mem="erreur": msg="<b><font color=red>> Votre fichier n'est pas un .pdf, il n'a pu être enregistré.</font></b>" end if Else mem="erreur": msg="<b><font color=red>> Fichier manquant, vous avez oublié de sélectionner un PDF.</font></b>" End if Next Set mySmartUpload = Nothing response.write(msg) |
en admettant bien entendu qu’on stocke les fichiers dans le dossier /download.