Newsgroups: php.general,php.internals Path: news.php.net Xref: news.php.net php.general:325697 php.internals:95469 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 47819 invoked from network); 28 Aug 2016 00:37:21 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 28 Aug 2016 00:37:21 -0000 Authentication-Results: pb1.pair.com smtp.mail=ash@ashleysheridan.co.uk; spf=permerror; sender-id=unknown Authentication-Results: pb1.pair.com header.from=ash@ashleysheridan.co.uk; sender-id=unknown Received-SPF: error (pb1.pair.com: domain ashleysheridan.co.uk from 88.98.24.69 cause and error) X-PHP-List-Original-Sender: ash@ashleysheridan.co.uk X-Host-Fingerprint: 88.98.24.69 shcp02.hosting.zen.net.uk Received: from [88.98.24.69] ([88.98.24.69:41772] helo=shcp02.hosting.zen.net.uk) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id CE/BA-34481-F3232C75 for ; Sat, 27 Aug 2016 20:37:21 -0400 Received: from cpc99934-brnt1-2-0-cust48.4-2.cable.virginm.net ([82.3.100.49]:46121 helo=[192.168.0.10]) by shcp02.hosting.zen.net.uk with esmtpsa (TLSv1:DHE-RSA-AES256-SHA:256) (Exim 4.87) (envelope-from ) id 1bdo5v-0001ie-O5; Sun, 28 Aug 2016 01:37:15 +0100 User-Agent: K-9 Mail for Android In-Reply-To: References: <5E615A59-AC2B-455F-9438-D295419F3767@ashleysheridan.co.uk> <33E6F0A8-A14B-4590-A18C-FF6D6E029D0A@gmail.com> <3B285FFA-4C62-421D-A5B5-E5F205C53C02@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=UTF-8 Date: Sun, 28 Aug 2016 01:37:02 +0100 To: Rene Veerman ,Joshua Kehn CC: php-general@lists.php.net,internals@lists.php.net Message-ID: X-OutGoing-Spam-Status: No, score=-2.8 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - shcp02.hosting.zen.net.uk X-AntiAbuse: Original Domain - lists.php.net X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - ashleysheridan.co.uk X-Get-Message-Sender-Via: shcp02.hosting.zen.net.uk: authenticated_id: ash+ashleysheridan.co.uk/only user confirmed/virtual account not confirmed X-Authenticated-Sender: shcp02.hosting.zen.net.uk: ash@ashleysheridan.co.uk Subject: Re: [PHP] feature request : gzip caching From: ash@ashleysheridan.co.uk (Ashley Sheridan) On 28 August 2016 01:31:50 BST, Rene Veerman wrote: >On Sat, Aug 27, 2016 at 9:36 PM, Joshua Kehn >wrote: > >> Apache handles gzipping just fine. http://httpd.apache.org/ >> docs/current/mod/mod_deflate.html >> >> and my PHP handles static file serving only when needed, when >evaluating >> content and js for specific URLs >> >> >> I'm not sure why that would be required. Why doesn't the HTML >reference >> the assets required directly? >> > > >that would result in *way* too many HTTP requests dude ;) > You're doing it wrong >i'm thinking i evaluate what URL is called up in PHP, figure out what >cache What's wrong with front end evaluating what js it needs to request, like angular or react does? >files are needed (i now use multiple stages of cache files for some >stuff >like the main HTML template), and output a new "master cache file" that >is >a file that gets called up rather quickly with readfile() after a >file_exists(translateURLtoFilesystempath($untranslatedContentURL)) to >see >if regeneration for any particular URL is needed.. > >public function translateURLtoFilesystempath ($url) { > $r = $url; > $r = str_replace('/','---',$r); > $r = str_replace('?','-_-',$r); > $r = str_replace('&','__-',$r); > $r = str_replace('=','___',$r); > return '--_'.$r; >} >public function translateFilesystempathToURL ($path) { > $r = preg_replace ('#.*--_#', '', $path); > $r = str_replace('---','/',$r); > $r = str_replace('-_-','?',$r); > $r = str_replace('__-','&',$r); > $r = str_replace('___','=',$r); > return $r; >} > > > > >> >> and for noobish developers it might be very convenient to add this to >php >> readfile() afterall >> >> >> Convenient and right are often two different ways to solve a problem. >I >> try to not offer convenient solutions that are not right. >> > >yea, that's the C++ attitude ;) you do know C++ got dinosaured for a >*more >simple and intuitive* C# right? ;) That's not what happened at all. C++ is alive and well, C# has always served a different purpose > >> >> --jk >> >> On Aug 27, 2016, at 3:04 PM, Rene Veerman > gmail.com> wrote: >> >> yea ok.. "something upstream".. is that nginx easy to stack above / >next >> to / under apache2? i'm really used to apache2.. >> and for noobish developers it might be very convenient to add this to >php >> readfile() afterall.. >> >> and my PHP handles static file serving only when needed, when >evaluating >> content and js for specific URLs to fit in a common HTML site >template for >> instance.. >> you know of a better way? i'm all ears :) >> >> On Sat, Aug 27, 2016 at 9:00 PM, Joshua Kehn >wrote: >> >>> Why is PHP handling static file serving? This is squarely outside of >it's >>> domain. Have nginx or something upstream handle gzipping content. >>> >>> --jk >>> >>> > On Aug 27, 2016, at 1:22 PM, Rene Veerman < >>> rene.veerman.netherlands@gmail.com> wrote: >>> > >>> > eh no, i'm a big fan of caching output in js / json cache files :) >>> > but those still need to get gzipped... not just my main JS file, >also my >>> > photoalbum contents -> another 1Mb of JSON content... >>> > >>> > On Sat, Aug 27, 2016 at 7:19 PM, Ashley Sheridan < >>> ash@ashleysheridan.co.uk> >>> > wrote: >>> > >>> >> >>> >> >>> >> On 27 August 2016 17:52:48 BST, Rene Veerman >>> >> gmail.com> wrote: >>> >>> Hi.. >>> >>> >>> >>> First off, i love PHP. Many thanks for keeping it free too. >>> >>> >>> >>> However, i've noticed that gzipping the 1Mb of javascript that >my >>> >>> seductiveapps.com needs, takes a relatively long time (measured >over >>> a >>> >>> total page load time which i'd like to bring down from it's >current 10 >>> >>> seconds, about a second or even more is spent gzipping (by a >core i5 >>> >>> machine)).. >>> >> >>> >> Are you building the js each time it's requested? Have you >thought >>> about >>> >> building it as a deployment step for production? >>> >> >>> >>> >>> >>> At one time, i spent time building PHP code that cached the >>> >>> already-gzipped >>> >>> content and outputted that with just readfile().. But i never >got it >>> to >>> >>> work a second time, unfortunately.. >>> >> Why don't you want the web server to handle the gzip side of >things? It >>> >> would make more sense surely? >>> >> >>> >>> Could you pretty please add this to the core of PHP? Shouldn't >be that >>> >>> hard >>> >>> for the internals team right?.. >>> >>> >>> >>> Many thanks in advance for even considering to do this.. >>> >>> >>> >>> with regards, >>> >>> Rene Veerman, >>> >>> CEO + CTO of seductiveapps.com >>> >> >>> >> -- >>> >> Sent from my Android device with K-9 Mail. Please excuse my >brevity. >>> >> >>> >> >> -- Sent from my Android device with K-9 Mail. Please excuse my brevity.