I have created a php file and uploaded it to my Magento server but it's being cached. It's a standard .php file, but whenever I amend it, nothing changes. This has only just started happening.
Any ideas how I can stop this from happening?
Sounds like your server hosts have installed APC or another "opcode" cache. I'd start with clearing the APC cache, and if that doesn't help then escalate to your server host's support system. Being able to deploy new code is a reasonable feature to want in a server.
Related
I've tried to install Magento 2 locally using XAMPP. This works fine, except for the fact that when I alter my CSS, HTML or JS, XAMPP won't get the updated files. It just takes the file I initially created with it's content, but not the updated version.
I think this has something to do with caching of Apache itself? I read something about disable cache using .htaccess (http://httpd.apache.org/docs/2.0/mod/mod_cache.html) but I can't figure out how to implement this.
Anyone knows how I can fix this?
Flushing cache doesn't work. Deploy static content may work, but I don't want to do that every time I make one minor change in the CSS (when I worked remotely, I did not have to do that either)
I think this problem is not Magento related, but rather something with XAMPP (probably Apache).
I have developer mode enabled.
Press Ctrl-F5 to hard refresh the page (to not use Browser's cache).
If you still see the previous pages or changes, then Apache has
mod_cache caching them, or PHP has its opcode cache settings set to
not refresh changes for X amount of time.
Taken from Xampp and Ampps don't reload files when changed
If mod_cache that is causing the problem then this might help you implement the fix How to disable cache of Apache?
This is not a caching issue, but rather the deploy mode you're using.
You are probably in default mode, in which case you will have to deploy static content every time, however you can switch to developer mode.
https://devdocs.magento.com/guides/v2.0/config-guide/cli/config-cli-subcommands-mode.html
This will stop magento having the need to generate the static content as it's done on the fly via the use of symlinks etc.
bin/magento deploy:mode:set developer
Or alternatively you can manually set this inside
app/etc/env.php
If developer mode isn't working it's more than likely down to permissions etc
Delete all files inside pub/static apart from the htaccess file, and make sure it's writable
In developer mode, M2 does not generate static files. It should create symlinks to them from the various modules. If you however have ran setup:static-content:deploy and have those files in place, it won't update them. Try to delete only those files inside pub/static folder on which you've worked and see if Magento links to them. If you delete all contents of pub/static/ folder, pages will take very long to load in browser.
I don't have any error logs or other info that I can figure out what's the issue, is not the first time that it happens. In my case is when I installed an extension, basically I do what is recommended after uploading the extension, clean cache and login again on admin, and everything is ok when I installed, the only problem is that sometimes the module disappeares has nothing was installed, and only shows again if a go and "clean Cache" on the admin panel.
If you use multiple web-nodes, separate admin nodes then it can be possible that the new codes might have not deployed to one of your servers and the old xmls are cached.
And I understand that you are using redis as your caching layer, so sometimes flushing the cache from magento admin panel doesnt flush the entire redis cache.
So you would need to try to connect to the redis server using redis-cli command then issue 'flushall' there.
Since about three weeks changes on .phtml files have no effect on our productive magento installation. Therefore the same changes take effect on our test installation which is essentially a copy of it. Changes are made on the test installation. Thereby I'm following the Template Path Hints. Of course we are using our own template like: /app/design/frontend/venedor/mod/ We don't modify core, base or default-files. After everything looks fine the changes are transfered to production. Changes are uploaded successfully and downloading again shows the changes. Have doublechecked the Template Path Hints in production, too. Cache has been cleared about a thousand times.
The same with .php files. But changes in .csv files in /app/design/frontend/venedor/mod/locale/ take effect.
We are running Magento CE 1.9.2.1 on:
Linux 2.6.32-openvz-042stab084.17-amd64 (no root-access, no more information)
nginx 1.9.3
PHP 5.3.27 +PHP-FPM
Google PageSpeed is available but disabled
I have absolutely no clue about this behavior... Maybe some kind of caching effect of nginx or PHP-FPM? Any idea or what kind of information I should add?
Try appending ?abc=def to the url to see if the page changes. If it does then you know it's caching issue. Do you have Varnish cache on your server?
I was using Magento 1.4.1 and upgrade gracefully to 1.4.2. After testing if the upgrade was Ok, I made some modification in order to have a new home page layout for a store using these instruction. The modifications have been tested on a local version (Ubuntu 10.04, php 5.3.2), and worked great.
When I upload the files to the pre-prod server (Centos 5.5, php 5.2.14), and access the System->Configuration->design tab in the admin backend, my browser seems to keep loading indefinitly.
What I have done:
I copied the app/code/core/Mage/Page/* directory to the app/code/local/Mage/Page/;
I created the app/etc/modules/Mage_Page.xml, and defined the codePool to local;
What I have already checked:
I got no errors in /var/log/httpd/*.log;
I got no errors in magento's var/log/system.log;
The frontend works fine;
The backend can be accessed, except the System->Configuration->design tab;
I tried to revert my modifications to a revision before the modification were made (using svn);
I cleaned up the cache using rm -fr var/cache/mage* var/session/* directly on the server;
I restarted the server multiple time;
I even tried to get a dump of the db in production on the preprod server, with no effect. I still got the same issue.
If someone could point out anything I could have forgot.
I am ready to try anything to make it work, since it would not affect the production server for now.
After a lot of searching, we finally tried to reboot the apache server (we had to force it to reboot, I don't know why?). When we retried, everything was working as expected.
There probably was a corruption on the server that made crash only this tag.
Hope this could help someone.
I noticed a strange sync problem. I have my project setup as a remote project and everything works fine. I have it set to upload on save. However, if someone on my server is working on a file and saves it. I don't see this change in netbeans and I end up opening a older version of the file and overwriting my colleague's changes when I press save.
Is there a way to have netbeans check the remote server for the latest file before saving?
thanks
No, NetBeans can not check the remote file automatically. It's just not set up to do that. Even if it were, you would still run into problems where you would clobber your colleague's changes, or he would clobber yours.
What you have is a basic version control problem, which is best solved by implementing one of the several version control systems out there (e.g., CVS, Subversion, Git, Mercurial, etc.) and then "building" your website out to the server from version control. Short of that, an imperfect solution would be to partition the files such that you are forbidden to edit files assigned to your colleague, and vice-versa.
NetBeans can download the file for you, but only when you tell it to by right-clicking on the file and choosing the Download command. This downloads the file whether it has been updated by someone else or not.