Re: caching problem
| From: | Stuart Dallas | Date: | Tue, 28 Jun 2011 16:59:50 +0000 |
| Subject: | Re: caching problem | ||
| References: | 1 2 3 4 5 6 7 8 9 10 11 12 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-313789@lists.php.net to get a copy of this message | ||
On Tue, Jun 28, 2011 at 5:53 PM, Fatih P. <fatihpiristine@gmail.com> wrote:
>
>
> On Tue, Jun 28, 2011 at 6:34 PM, Stuart Dallas <stuart@3ft9.com> wrote:
>
>> On Tue, Jun 28, 2011 at 5:12 PM, Fatih P. <fatihpiristine@gmail.com>wrote:
>>
>>> On Tue, Jun 28, 2011 at 5:30 PM, Stuart Dallas <stuart@3ft9.com> wrote:
>>>
>>>> Fatih, please explain what you mean by "the code files are being
>>>> cached. and modifications in methods are skipped
>>>> and not executed." How are you getting the modified files onto the
>>>> server, and how are you running the scripts? Are you working directly on the
>>>> server, or are you uploading the files to the server via FTP, SCP or some
>>>> other mechanism?
>>>>
>>>> OK, this is a development machine, everything is running on it. nothing
>>> is being uploaded through ftp, scp or something else.
>>> all kind of content caching is disabled.
>>>
>>> and what I mean by the code files are being cached is: after the
>>> modifications, i do get the result which was produced before modification.
>>> which shows
>>> that the file is not being interpreted by php. how i get to this point
>>> that I see errors after restarting the machine which were not there during
>>> coding or when
>>> i dump an object it doesn't show up anything other than previous content.
>>>
>>> to recover this situation, either I have to restart httpd which
>>> sometimes does work or when it gets more problematic,
>>> i have to crush httpd / php on start. and only having this problem on
>>> windows machines.
>>>
>>> sounds funny to most of you but it is happening
>>>
>>
>> I'm sure it is happening, I don't doubt that, but there's probably a very
>> simple explanation.
>>
>> What browser are you using? Certain older browsers such as IE6 have their
>> own ideas about whether pages should be cached or not. You can usually
>> bypass the browser cache by holding control and/or shift while clicking on
>> the refresh button. Try that next time this happens.
>>
>> Other possibilities include filesystem issues, such that the OS is not
>> seeing that the file has been changed - there are levels of caching on
>> modern operating systems that most people, quite correctly, are not aware
>> of. The likelihood of this being the cause is miniscule.
>>
>> If you're absolutely certain that you are not using any opcode caching
>> (you mentioned that you are using pre-compiled binaries, and it's possible
>> they include APC or similar by default), then I have no idea what's going on
>> beyond what I and others have already suggested.
>>
>> using FF3,5 and IE7 as browser.
Those browsers should be fine, but forcing a reload (the control/shift +
refresh) is always worth trying.
Maybe I should compile php myself disabling things i dont need and see it
> will make any difference.
>
You can see what's in your PHP build by creating a script that just contains
the following..
<?php phpinfo(); ?>
Run that and check the output. If you got the binary from php.net then
chances are that you don't have any opcode caching modules in there.
It's also worth doing a variation on Micky's suggestion - when I want to
make sure a script has actually been executed rather than cached data being
served I put a call to echo date('r'); in an appropriate place. That way the
script output will display the current date and time which should change
with each request.
-Stuart
--
Stuart Dallas
3ft9 Ltd
http://3ft9.com/