de invoering,,,,,,,,,, koekjes, 1, 7 - eenheid,,,,,,,, de delen van het netwerk, maandag wat in tuts + koers zal dalen tot slechts drie dollar.Niet' niet missen.,, misschien heb je het gehoord van koekjes, maar wat ze zijn, hoe doen we het?In deze handleiding, richten we ons op de koekjes op basis van kennis en begrip van hun functie in de verschillende netwerken van aanvragen en de website van het milieu.We leren ook hoe ze te gebruiken in onze PHP en javascript projecten, waarbij bijzondere aandacht moet worden geschonken aan het probleem van de veiligheid van het gebruik van de, die zich kunnen voordoen.Na het lezen van dit punt, je hebt de benodigde vaardigheden instellingen, met het oog op de veiligheid van het netwerk van toepassing op je eigen veiligheid,,,,, stap 1.Het begrip van onze reis, koekjes, is de eerste stap van deze koekjes, wat is dat eigenlijk.Zelfs als je al met hen samen te werken, zou je nog steeds dat dit deel zeer nuttig - dus blijf bij mij!Je kan het, abstracte, makkelijk om te denken dat de koekjes als tekst, is het redden van je computer.In een web browser verzoek, de oprichting van een dergelijk document.Als dat gebeurt, de server kunnen lezen en schrijven en de inhoud van het dossier.Maar het lijkt een gevaarlijke functies - immers, niemand houdt van andere mensen op hun computer geschreven documenten, er zijn een aantal beperkingen, waardoor dit proces zo veilig mogelijk te maken, het netwerk - server kunnen alleen toegang tot hun eigen domein van de koekjes.Dit gebied is door de browser, wanneer een nieuwe koekjes zijn verzoek door de server, maar alleen het gebied of de sub - server (server kunnen kiezen - domeinnamen).Dit betekent dat de koekjes zijn geregeld, bijvoorbeeld mozilla.com google.com niet kan lezen, en vice versa, volgens een protocol, koekjes, mag niet meer dan 40 bytes (4) elke., er zijn koekjes, elk domein van kwantitatieve beperkingen.Het aantal verschillende browser, maar in het algemeen is de beperking van het gebruik van de 20 koekjes.Dit is om te voorkomen dat een regio die de cliënt schijfruimte op de harde schijf van de cliënt te beperken. Het totale aantal.Dit cijfer verschilt ook van elke browser, maar over het algemeen beperkt zijn ongeveer 300 koekjes.Wanneer meer dan dit cijfer, een oude koekjes worden geschrapt, in een nieuwe worden gecreëerd.Deze datum is de browser kan het schrappen van de oude koekjes wanneer ze niet langer nodig zijn van de server.Als de vervaldatum is leeg, als de verbinding met de server is gesloten, het schrappen van de koekjes.Als de website of op het etiket van de ramen gesloten door de gebruiker, of, wanneer de gebruiker de browser sluiten wanneer dit zal gebeuren.Deze koekjes, en soms ook voor de zitting vooral wordt gebruikt voor de opslag van koekjes, tijdelijke, technologie, laten we uitzoeken waar die iets dat lijkt op een technisch niveau.Cookie is via http doorgeven.Dit is een browser voor herstel en versturen van documenten naar de server van de overeenkomst.Na het verzoek in het verzoek worden toegezonden aan de server, telkens wanneer een nieuw project op de website van de browser wordt verkregen.Hier zien we een server een verzoek ingediend voor een nieuwe koekjes (dit is een deel van het antwoord een http), koekjes: naam = de inhoud van gegevens; de looptijd 31-dec-2010 GMT = op vrijdag, 23: 59: 59; pad = /; gebied =. Voorbeelden. Net nu niet bang zijn, het is allemaal heel begrijpelijk!Die koekjes:, is om de browser weet, de server van het creëren van een nieuwe koekjes.De naam is de naam,, koekjes.Elke regio moet de koekjes in een andere naam, dus de browser kan alle koekjes uit elkaar.Als de naam ", = inhoud van gegevens, de inhoud van de gegevens van deze gegevens is, is opgenomen in de koekjes.Deze gegevens kan een tekst of digitale, en dat kan worden bereikt, Volume 4.,,, verstreken =, is een bevel voor de vervaldatum.De vervaldatum is in de "wdy dd op maandag, HH: mm: SS' JJJJ '" vormen (, vraag me niet waarom ik die worden gedefinieerd als deze belachelijke vorm, want ik weet het ook niet.Geen van de gebruikers die de datum zien, dus waarom verspilt geheugen, een harde schijf van de bandbreedte van de ruimte en de datum?Maar maak je geen zorgen, omdat de meeste programma 's zijn gemakkelijk te gebruiken taal van de functies die aan je.De browser automatisch geschrapt in de laatste datum van koekjes, het domein, en weg, moet een nadere uitleg.Het gebied is in het gebied, op het gebied van de koekjes in een positief zal zijn.Als het gebied is de ads.google COM koekje zal worden toegezonden aan het gebied van de server, als het gebied is Google COM koekje zal worden overgebracht naar een server die Google van de regelingen, met inbegrip van google.com zelf, en de weg is weg. De regio koekjes gestuurd.Dit betekent dat, als de weg is naar "/'s /, en een gebied voor de" ads.google COM koekje zal worden toegezonden aan de server, als de browser gevraagde documenten ads.google. COM /Images /".Als het pad is die "/", de koekjes naar de server, ongeacht of in het verzoek op de server van de positie van de documenten, de volgende stap, zullen wij de balans van het gebruik van deze eigenschap kan worden in de programmering van de taal, stap 2.Hoe creëren en lees het koekje, koekjes, kan op vele manieren, maar het doel van deze handleiding zullen we ons concentreren op het vgp en javascript PHP, is het belangrijk om te onthouden, het creëren van een PHP een koekje is, is dat je moet alle koekjes in je sturen, geen gegevens aan de browser.Dat betekent dat je altijd moet een nieuwe start voor de koekjes, geen produktie.Dit omvat de ECHO () () of - commando, en < http: //europa.eu.int > of < body> etikettering.Natuurlijk zijn er uitzonderingen, maar dit is een algemene vuistregel.PHP /* * * * * * * * * * * * * * /. Het creëren van een koekje = "lijst van"; waarde = "Peter Griffin"; ////////() en de verhoging van de huidige tijd voor seconden, 60 seconden * 30 = 30 minuten //dus dit koekje niet in 30 minuten.Je kan worden opgemerkt dat de vervaldatum is in een paar seconden, zal het juiste formaat PHP /interne!Expiredate dollar = time (* * * * * * *) + 60 $30; /voorbeeld /pad = "; $domain = test. Wat laat. COM"; voor de veiligheid = vals; ///////stuur alleen koekjes als https verband een = echte dollar; ///////voor koekjes maakt alleen http (in plaats van setcookie (.) $van de waarde van de dollar, expiredate, $, de route, de veiligheid, de dollar); < http: //europa.eu.int >...Alles hier?> dit moet bekend zijn met, behalve dat de dollar, de veiligheid van klasse."Veiligheid" is de kracht van de koekjes, maar als een https verband is vastgesteld te sturen, als die waar wordt vastgesteld en meestal niet."Soort" die koekjes alleen via http, betekent dit dat de cliënt taal, zoals javascript en VB, geen toegang tot het koekje.Dit helpt om te voorkomen dat de vervelende dingen, zoals de trans - site scripting, en moet worden vastgesteld waar, als je geen klanten te bewerken koekjes ter ondersteuning van talen zoals het javascript.Ondertussen, om misverstanden te voorkomen, "soort" betekent niet dat koekje niet via https gestuurd, omdat ze nog steeds, in feite.Maar let op, boven de fragmenten van de code kan worden gedaan (moeten): een kleine, <?PHP setcookie ("de lijst", "Peter Griffin, time (* * * * * * *) + 60 30 /voorbeeld /", "test. Wat laat. COM", valse, echt);?>, grote.Kunnen we nu koekjes maken, maar we moeten kunnen lezen.Gelukkig is dit makkelijk maken, PHP een koekje is gecreëerd.PHP in een milieu, bekend als _cookie [], kan worden gebruikt voor de winning van de waarde van de koekjes.Het te gebruiken, moet worden opgenomen in de in de marge van de naam "koekje" kan worden.PHP cookievalue dollar = dollar _cookie [];'name koekjes?> het milieu kan worden als alle andere variabelen.Net als _get dollar [] en [...] _post dollar rechtstreeks kan worden als een normale variabelen (als je als het koekje bestaat natuurlijk controleren als je wilt, als je wil veranderen de vervaldatum, weg, of een gebied met dezelfde naam, je moet de koekjes setcookie (oorspronkelijke) voor bestaande koekjes.Als je de uiterste datum is veranderd in de afgelopen tijd () - 30 × 60, bijvoorbeeld), het koekje zal worden geschrapt. En javascript, koekjes en de klant kan lezen en schrijven.Hoewel javascript niet lezen en schrijven koekje biedt een goede oplossing, is het mogelijk en op grote schaal gebruikt.Het gebruik van document.cookie mag koekjes operatie javascript object, zoals blijkt uit de volgende code fragment: ///////voor het verkrijgen van de datum, de VAR - expiredate = nieuwe ('); ///////datum expiredate verhoging van 5 uur. Het huidige aantal uren (expiredate. Gethours) + (5); cookiename = = = = = = = = + document.cookie mag cookievalue expiredate; toutcstring afloopt. (de) + pad = /voorbeeld /; gebied = test. Wat laat. COM ";, misschien is het je opgevallen, de grammatica is http symbolen lijken op elkaar.Dit heeft een aantal voordelen, in de controle, maar ook de invoering van een potentiële vraag.De volgende is < pijn > de fragmenten lezen een koekje. Cookiename = "testcookiename, var."; TextArray = documenten var. Koekjes. Splitsing (";"); ///////heeft in een reeks verplichtingen van alle deel (VAR i = 0; ik < textarray.length; I + +) {///////- hoewel de serie stuk var textpiece = TextArray [M]; ////////1 tablet bevat het filteren van het begin van het touw ruimte (textpiece (0) = = = = = = = = = = = = = textpiece textpiece "). De substring (1, textpiece. Lengte); ///////textpiece we koekjes met als naam als (textpiece. (cookiename) = = = = = = = 0) {///////textpiece naam terug na wat koekjes terug. - (cookiename. Lengte, c.length);}}, ik weet het, ik weet het, het is een kwelling.Gelukkig ben ik met een van tevoren geschreven in de volgende functies (je misschien wil z 'n functie, hoewel, je moet.Writecookie (cookiename, functie, cookievalue, expirehours, pad, regio) {VAR date = nieuwe ('); de datum. De huidige uren (date.gethours + expirehours); document.cookie mag = cookiename + = + cookievalue + = + datum verstreken "; + = + + + + + + +, weg weg" = + gebied gebied; de functie van readcookie (cookiename);} {VAR TextArray = documenten. Koekjes. Splitsing (";"); (VAR i = 0; ik < textarray.length; I + +) {VAR textpiece = TextArray [M]; en (textpiece (0) = = = = = = = = = = = = = textpiece "). (1 textpiece. En textpiece. Lengte); als (textpiece. (cookiename) = = 0) textpiece terug. Substring (cookiename. Lengte, c.length);}}, onthoud deze fragmenten bevat geen fouten controleren.,, stap 3.Weet je wat? Weet je wat?Het is door de Netscape, koekjes, gebruik willen maken van hun auto 's voor het creëren van een online winkelen.Vanwege de koekjes om goederen van hun auto 's, ook uit de winkel, nu afsluiten, gebruiken we koekjes in bijna elke doelstelling, die je kan bedenken.Je kunt gebruiken om het behoud van de gebruiker, zoals de naam, de taal, de locatie of de omvang van het scherm.Dit kan de klant wil je voor de kwaliteit van de dienstverlening, want je kunt de optimalisering van de dienstverlening aan de klant, en onthoud dat een optimalisering van de toekomst.Bijvoorbeeld, kan je de klant de voorkeur voor de instandhouding van een koekje, dan, naar je plaats in de klanten, te laten zien dat je de inhoud van de website, natuurlijk, is er meer interessante dingen doet dan dit.De volgende stap, dan geef ik je een goed deel van de code, als voorbeeld, stap 4.Schrijf iets Cool, eindelijk!Nu kunnen we beginnen met het schrijven van een verschrikkelijke code.Hier is een extra stukje, het gebruik van koekjes voor het creëren van een log - mechanisme, weet je nog dat ik "deel van de code, voor we beginnen, dit deel van de code met een mysql.Als je niet bekend bent met mysql, raak niet in paniek.Hoewel het een beetje moeilijk kan begrijpen, moet een fundamentele PHP en koekjes van kennis, het creëren van een "ik" te bereiken, moeten we iets.Ten eerste, we moeten een gebruikersnaam en wachtwoord en de identificatie van de database.Ten tweede, we moeten een unieke string of digitale, met het oog op de vaststelling van de door de klant koekjes (dit is in een databank voor identificatie).In dit segment, we gebruiken de SHA - 1 - samenvatting, dit is slechts een string, als een identificatiecode.Als het goed gebruikt, dit biedt goede veiligheids - en de meeste mensen alleen de invoeging van een gebruikersnaam en wachtwoord voor de koekjes, en stuur het naar de server automatisch.Op dit punt moeten te allen tijde.Meestal, koekjes is door een niet - verbonden met de inhoud van de veiligheid, die gemakkelijk kunnen worden gezien van een potentiële aanvallers.PHP //this assumes dat de gebruiker heeft net logged in /****Creating een identificatie string****/$username; //normally de gebruikersnaam zou bekend na het Repertorium van twee willekeurige //create A - waarden en de gebruikersnaam $digest = Sha (strval (rand (0, microtime (echt)) + $username + strval (microtime (echt)); //save database (. De verbinding is al gemaakt) mysql_query ('UPDATE gebruikers die reloginDigest= "'.$digest.'" waar username= "'.$username.'"); //set het koekje setcookie ('reloginID', $digest, tijd +60*60*24*7 (), "/",'test.example.com', valse, waar); //this assumes dat de gebruiker ze uit en het is logged koekje is vastgesteld door de cookie****//****Verifying gebruikers. = = = = = = = mysql_real $digest Digest $_COOKIE['reloginID'];_escape_string ($spijsvertering); ////////de inspectiedatabank een kwaadaardige inhoud filtreren resultaten van de spijsvertering = mysql_query dollar ('select gebruikersnaam van de gebruiker relogindigest = "." $verteren. ""); ///////gastro - dat onderzoek als (mysql_num_rows ($) = = 1) {% userdata = mysql_fetch_object ($van de resultaten); $gebruikersnaam = $userdata - > hier moet je gebruikersnaam; ///////gebruik van deze code de volgende keer weer op de instelling van een nieuwe spijsvertering.ECHO met succes hebben, de naam "} {. Dollar; ///////of gastro - bestaat niet (of meer dezelfde abstract gezien, maar dit is niet mogelijk) ECHO niet inloggen.}?> het gebruik van de, net als wij, hebben dezelfde twee spijsvertering is een kleine kans.Dit is een 40 een string, waaronder, in theorie, als de veranderingen moeten invoeren om een volledig willekeurige output.In de praktijk, je moet op de server van de code in de toevoeging van een beperking in de tijd, zodat de spijsvertering is niet geldig na x min.Het kan voorkomen dat een kopie van de koekjes, en gebruiken ze inloggen.De beste praktijken, we zijn bijna tot aan het einde van de les.Als conclusie wil ik een samenvatting van enkele van de beste praktijken, gevoelige gegevens: nooit zal worden opgenomen in een koekje.De klant kan een computer kijken, dus geen persoonlijke informatie is in de rug, niet van mening dat de gegevens afkomstig van de koekjes.Altijd filter touw en een nummer.De aanvaller kan schrijven... Gegevens tot de koekjes, om te doen wat je niet wil dat je dienst doen, proberen in te schatten hoe lang de koekjes moeten doeltreffend zijn en voorzien zijn van overeenkomstige vervaldatum.Je wil niet in de computer de cliënt oude crackers in honderd jaar afloopt, zal altijd de veiligheid, om te voldoen aan de behoeften van toepassing is.Als je geen aanvragen redacteur koekjes javascript, leiden.Als je altijd een https verbonden, zodat de veiligheid.Deze verbetering van de integriteit van de gegevens en de vertrouwelijkheid.,, conclusies, en ik hoop dat je vandaag een van de Nettuts+ training.Als je een probleem hebt, kan te allen tijde, laat een bericht achter of op Twitter.
Koekjes
Previous:Codeigniter heeft niets