Advertentie | |
|
![]() |
||
Citaat:
![]() Maar een nadeel is dat je mogelijk meer moet doen, zoals images/files/css etc.
__________________
Per undas adversas (tegen de stroom in)
|
![]() |
|
![]() |
ehh.. ff denken.. dus je laat één script alles doorsturen..
Maar daar geef je zelf toch headers aan mee toch? Maar plaatjes en pagina's hebben toch sowieso andere headers? Maar die geef je niet mee? Ik vind het idee overigs wel redelijk briljant..
__________________
nr. 3 of The Eleven Rules of the Earth - When in another’s lair, show him respect or else do not go there. -
|
![]() |
||
Citaat:
![]() Maar hoe doe je dat dan, een "directory" redirecten naar een masterscript ?
__________________
When you are arguing with an idiot, make sure the other person isn't doing the same thing.
|
![]() |
||
Citaat:
PHP-code:
De handler voor /images/ en /files/ zijn het meest interessant. Bij images zie je dat de content type-header meegestuurd wordt, afhankelijk van de MIME type van de betreffende image, wat weer afhankelijk is van de extensie. Bij de /files/ komt de info wel uit de database, waar ook de MIME type wordt opgeslagen. De functie download: PHP-code:
__________________
Per undas adversas (tegen de stroom in)
|
![]() |
||
Verwijderd
|
Citaat:
![]() Het lijkt me namelijk niet. De browser ziet het plaatje in de html-pagina, vraagt het plaatje op bij de server, krijgt een 'not modified' melding, maar aangezien de browser het plaatje nog niet in cache heeft, zal deze hem toch gaan downloaden. ![]() Imo dan ![]() |
![]() |
||
Verwijderd
|
Citaat:
[edit] Jawel hoor: http://nl3.php.net/switch Dit is toch veel overzichtelijker? Maar iedereen heeft zijn eigen programeerstijl en mening ![]() [/edit] |
![]() |
|||
Citaat:
Citaat:
__________________
Per undas adversas (tegen de stroom in)
|
![]() |
|||
Verwijderd
|
Citaat:
Citaat:
Verder zou je ipv substr( $uri, 0, 8 ) imo beter preg_match( '^/images/', $uri ) == 1 kunnen gebruiken. Dit is namelijk makkelijker te programeren en te onderhouden ![]() Bijvoorbeeld: PHP-code:
Misschien moet je de pattern nog iets aanpassen en ik weet ook niet of het wel werkt, maar het idee lijkt me duidelijk ![]() |
![]() |
|
Verwijderd
|
Ik neem aan dat je dat via htaccess oid hebt geregeld..
Is het dan niet makkelijker om te zorgen dat als een dir niet bestaat, hij dan pas redirect naar een script? Of als dat niet kan, dat je mappens als images/ uitsluit van doorsturen? (het idee an: voorkomen is beter dan genezen ![]() |
![]() |
|||
Citaat:
Citaat:
De switches kan ik echter wel zo doen, is idd mooier en overzichtelijker. ![]()
__________________
Per undas adversas (tegen de stroom in)
|
![]() |
||
Citaat:
En al zou ik toegang bieden, dan valt er niets op /computers/ te halen. Mijn website is 100% database driven. Alle content staat in de database, alles. Behalve de site layout (head.php en foot.php). Het enige wat ik zou kunnen doen, is de mod_rewrite regel een uitzondering laten bieden voor /images/ Maar dat doe ik liever niet, tenzij het écht niet anders kan. En het kan zeker weten anders. ![]()
__________________
Per undas adversas (tegen de stroom in)
|
![]() |
|
![]() |
je moet een Cache-Control header sturen
zie http://www.w3.org/Protocols/rfc2616/...4.html#sec14.9
__________________
Ooit. Dan.
|
![]() |
||
![]() |
Citaat:
__________________
Ooit. Dan.
|
![]() |
||
Verwijderd
|
Citaat:
En ik snap het voordeel van beiden niet. Waarom zou je in je url /computers willen hebben als je niet eens een map hebt met computers? Het voordeel van mappen is toch juist dat je alles netjes structureerd, niet dat je je visitors om de tuin leidt? |
![]() |
||
Citaat:
|
![]() |
||
Verwijderd
|
Citaat:
www.fluffles.net/computers/hardware Staat toch een stuk mooier dan: http://www.fluffles.net/index.php?gr...&view=hardware (Om een voorbeelds te geven ![]() je gefet dus al zelf het antwoord op de vraag ![]() |
![]() |
||
Verwijderd
|
Citaat:
Wat maakt het uit dat er fysieke toegang is tot een images map? Gewoon opendir disablen en klaar.. |
![]() |
||
Citaat:
Ik denk dat het probleem in dit geval de Last-Modified header is, volgens mij stuurt PHP standaard altijd de huidige tijd, terwijl je de mod tijd van het plaatje zelf wil sturen. Ik zou 'es kijken of het sturen van een Last-Modified header de zaak oplost. |
Advertentie |
|
![]() |
||
Verwijderd
|
Citaat:
stuur als eerste de 304 NOT MODIFIED en onthoudt enkele kenmerken van de browser (sessie oid) die het uniek maakt. Bewaar ook wel plaatje is opgevraagd. Indien er weer een request komt voor hetzelfde plaatje van dezelfde sessie/browser heeft de browser het plaatje niet in cache en kun je dus het gewone plaatje sturen. Hoe het onthouden moet weet ik niet; het lijk me veel read/write access geven op de database of schijf (indien opslaan in bestand of via bestandsnaam)... |
![]() |
|
Nog even over mijn opzet. ********** zei het eigenlijk al, stel we hebben de URL van dit topic:
http://forum.scholieren.com/showthre...hreadid=722786 dat kan ook anders: http://forum.scholieren.com/hardware/722786 de forumnaam gewoon genoemd bij naam en de thread-ID erachteraan. Je faked hier directories, dat is precies wat ik doe. alleen dan voor ALLE URLs op mn site. Voordelen zijn flexibiliteit en managebility, niet eens veiligheid. Alles wordt automatisch voor je gedaan. Als ik /computers/php wil maken hoef ik maar naar node management te gaan en gegevens invullen en de url staat in database, waarna ik berichtjes kan toevoegen. Alles via database dus, komt geen HTML of PHP code bij kijken. Net als de meeste CMS'.
__________________
Per undas adversas (tegen de stroom in)
|
![]() |
||
Citaat:
![]()
__________________
Per undas adversas (tegen de stroom in)
|
![]() |
||
Citaat:
Maar eerst nog even wat proberen voordat ik echt een database aan ga leggen hiervoor. ![]()
__________________
Per undas adversas (tegen de stroom in)
|
![]() |
||
Interessant:
Citaat:
Ik ga ff wat proberen. =)
__________________
Per undas adversas (tegen de stroom in)
|
![]() |
|||
Got it!
Request #1: Citaat:
Citaat:
Te zien valt dat bij de eerste request de server de file gewoon stuurt, en o.a. twee meta-informatie headers meestuurt. De browser herkent deze en stuurt bij een F5 (refresh) de headers If-Modified-Since en If-None-Match en Cache-Control mee. De browser herkent deze en controleert of de file gewijzigd is, dit is niet het geval waardoor een 304 Not Modified meegestuurd wordt. De Date headers zijn niet relevant aangezien deze alleen de datum en tijdstip aangeven van de request/communicatie, geen meta-informatie over de file/URL. *sigh* dit is dus gemakkelijk te implementeren in mijn systeem. ![]() Alleen moet ik weten hoe de Etag gegenereerd wordt. Woei =)
__________________
Per undas adversas (tegen de stroom in)
|
![]() |
||
Citaat:
![]()
__________________
Per undas adversas (tegen de stroom in)
|
![]() |
||
Citaat:
Ik ga wel een centraal-topic sticky topic maken, waarin dus links naar allerlei topics staan, daar zou deze eventueel in kunnen, maar eigenlijk vind ik dit te specifiek daarvoor.
__________________
Per undas adversas (tegen de stroom in)
|
![]() |
|
Ik heb m'n code aangepast, en het werkt! Woei. :cool:
PHP-code:
__________________
Per undas adversas (tegen de stroom in)
|
![]() |
||
Citaat:
![]()
__________________
When you are arguing with an idiot, make sure the other person isn't doing the same thing.
|
![]() |
|
Verwijderd
|
@Enlightenment:
Je switch (voor zover ik weet werkend): PHP-code:
Laatst gewijzigd op 20-01-2004 om 20:01. |
![]() |
||
Verwijderd
|
Citaat:
Er is toch een zoekfunctie.. |
![]() |
||
Citaat:
Het is misschien een idee om een soort PHP-topic (of server side scripting - topic) aan te maken waarin (eventueel op aanvraag) links komen naar interessante threads zoals deze, waarin enkele leuke script-voorbeeldjes staan en veel interessante informatie. Het is maar een ideetje, en het zal ook wel z'n nadelen hebben wsl (bijvoorbeeld, wat zet je erin, wat niet). Zoals ik zei, maar een ideetje ![]()
__________________
When you are arguing with an idiot, make sure the other person isn't doing the same thing.
|
![]() |
|
Verwijderd
|
Eigenlijk gaan we offtopic,
maar er is al over een PHP sticky gedacht maar dat is niet praktisch.. Er gaan dan scripts door elkaar lopen, aangezien php weleens complex kan worden, kan het dus gaan verwarren.. Met html is dat niet zo.. En wat heb je aan dit script als je het niet specifiek nodig hebt? Niks toch? ![]() |
Advertentie |
|
![]() |
Topictools | Zoek in deze topic |
|
|