Change Magento cache directory back from /tmp to Magento var folder - magento

Magento has switched the cache directory to /tmp on the server for 1 of the sites on a Magento multisite installation. How do we get this to go back to the normal cache folder in the Magento folder.

If this is multiple instances of Magento being installed on a single server, the usual reason for this happening is that the var/ directory has become non-writable to the web server process due to a change in permissions or ownership.
You will need to figure out what has changed either in web server/cPanel/WHM/suPHP configuration or if a backup or restore process has messed with file/directory permissions/ownership.
Example of Magento cache being written to system /tmp

Related

Move Vtiger 7 Storage and Test directories to a new location

I have recently deployed my instance of Vtiger 7 in a load balanced auto scaled configuration.
I have also created a NFS server and mounted this to my Vtiger server. This NFS will also be auto mounted to any additional servers in the auto scaled scenario.
In order for this to all work properly I need to move the /storage and the /test directories to the NFS utilizing a symbolic link.
I have set this up perfectly and also established the proper symbolic links.
Problem I’m running into is that the vtiger will read the data from the symbolic link folders without issue, however is unable to write to these folders due to permissions issues. I’ve set permissions on the NFS folders 775. I’ve also tried 777 permissions just to check it out but still getting the same errors and vtiger will not write to the directories. Any idea of how I can solve this?
After burning by eyes our for many hours, I have solved my own question.
The issue was regarding folder ownership settings. I essentially needed to change the symlink owner and the NFS directory owner to the same owner as the CRM web root.

Laravel 5.4 Error 500 on all but Front Page

I have a functioning laravel app that I developed locally. I moved it onto a server via ftp (just to show someone for feedback).
I changed the APP_URL in .env to the subdomain pointing to the /public folder. Also changed the database information. Everything else was left exactly as is.
I can access the front page without any problem. Anything else (e.g. /login or an AJAX to any other controller) results in a Server Error 500 that leaves no trace in the server error logs.
When I assign different routes to the / those are also displayed. I can show pages that pull data from the database, so that is not the issue.
Both local development and server run apache on linux.
Any pointers?
Update: Thank you for the suggestions so far. I currently cannot access the server via ssh (not my server). I'm working on getting that set up and will try your solutions as soon as I can.
Thanks everyone.
With a little help from the hosting company we found the problem. All we had to was to add
RewriteBase /
to the .htaccess automatically created by laravel.
Make sure that your web-server has read and write permissions to the following folders
public
bootstrap/cache
storage
If the web-server does not have these permissions it cannot compile views, store session data, write to log files or store uploaded files.
Set Webserver as owner:
assuming www-data is your webserver user.
sudo chown -R www-data:www-data /path/to/directory
Not always will work if you CHOWN it, in some cases I had to CHGRP to www-data on my Ubuntu VPS as well.
How I'm checking is this:
Domain has to point and if there's an SSL, a padlock in the web browser has to be seen. No matter on your localhost, but Laragon is the quickest to set it up.
Now I know that I see what I should if I can write something in my index.html file inside. If I can't see it, permissions or roles are wrongly set.
Laravel has tons of info online (or google it) on how to set up CHOWN and CHGRP, so, if I'll clone some repo, or unzip it, the first thing now is to set these two up. If these two are rightly done, I can do npm install, composer install - if it's not a shared hosting where I can't do it, but VPS or localhost.
Now you should be able to see Laravel's pages and only public and storage might want different permissions than the rest.
.env file should be created with right permissions as well, if no, you won't key:generate later for instance.

Symfony 3 permissions var/cache

I am setting up Symfony 3 for a web project. I have installed it as per the SymfonyBook. When I test by accessing config.php in the web folder from the browser I get the following messages:
Major problems have been detected and must be fixed before continuing:
- Change the permissions of either "app/cache/" or "var/cache/" directory so that the web server can write into it.
- Change the permissions of either "app/logs/" or "var/logs/" directory so that the web server can write into it.
I have already set up the permissions as described in the Symfony Book using setfacl and checked them www-data is the group owner of var folder and the cache, logs and sessions sub folders and the folder and file permissions are set to 775.
Please note this is Symfony 3 file structure not Symfony 2.
has anyone had a similar experience and managed to find a solution?
olved the problem. I had set the permissions in the project directory but I have set it up using PHPStorm to copy the files to a local server and I had not changed the permissions on the server. Apologies first time I has used this feature in PHPStorm as i usually work in the served directory.

how to bring live magento site to localhost without effecting live site

i want a live site to be on local host and without effecting any functionality of live magento site. i have tried many way of doing that but have not get any result from it.
steps i tried are :
1. taken database from magento live site by entering into cpanel(by ftp access) > phpmyadmin > exported all the files to my local machine and i imported all the data to my local phpmyadmin.
2.taken all neccessary files from cpanel > file manager > all files (for example p_html, .htpassword, .trash, access log, etc file and many more) and put it on my local machine and then i put the file in folder and kept it into C:\xampp\htdocs\ all file ( in folder ).
3 Replaced the path of live site with localhost:1234 in the all sql files where applicable taken in step one.
but still not working .
Any help will be appreciated....
Copy your LIVE Magento store to your Local computer:
Download the magento files using any ftp client.
Export the database from live server.
Put the downloaded Magento files in your localhost root folder.
Create a blank database(lets say it 'local-database') in your local computer and import the database backup that you exported from the live one.
Delete/Rename the file app/etc/local.xml
Re-install the Magento using the local-database.
After installation, go to Admin section and then
(i)Flush all cache. (ii)Re-Index all data. (iii)Flush all cache.
That's it. You are done.
N.B. If you have domain specific Modules installed, those modules will not work here.
Seems very simple right. Believe me, it is that simple.
If you face any problem in installing your Magento in localcomputer, here is a post that may come in handy: http://www.insync.co.in/how-to-install-magento-on-wamp-server-localhost-localcomputer/
Steps:
Download the files to the local project folder.
Create a new local DB and import the live database backup/dump.
Update app/etc/local.xml file with local DB parameters(Host name, DB
name, DB username, DB password)
Magento have the project URL saved in 2 places(secure URL and
unsecure URL) in the table core_config_data. We need to update
that in imported local DB to the local URL(9th and 10th record in
the table).
Delete the cache: Delete the contents in var folder(That folder
contains reports and logs too. I assume that you won't need it as
this is a separate installation)
The local copy will most probably work by now but there are possibilities that it would not. Things to do in this case:
If you are getting redirected to the live site, check the .htaccess
file for redirects(For various reasons there may be a redirect
defined in the file)
If you are getting forbidden error, this will come in handy(Usually occurs in linux systems)
There may still be some problems probably theme or module specific. In this case you will need to debug the project and find out what the problem is. Xdebug will come in handy in this situation for boosting the debug process :)
Subrata's solution will conflict with some of the Magento Modules installed and will not allow you to re-install Magento in local. I follow these steps and everything works fine.
Just give a permission (0777) after take a backup to that folder in your local PC
First of all you will have to change the secure and unsecure base_url in your database.
These can be found in the 'core_config_data' table.
Paths:
web/unsecure/base_url
web/secure/base_url
If you want to access your local version of Magento via localhost, you'll have to set localhost as your base_url.
After that you need to clear your cache folder.
EDIT:
To install and run Magento on your local PC using XAMPP, please follow these steps:
http://www.magentocommerce.com/wiki/1_-_installation_and_configuration/installing_on_windows_with_xampp_and_wamp

Unable to run Magento site offline. DEV server redirects to live store

I have a Magento site running on a live e-commerce server.
I downloaded the whole site for offline use in a development environment. I changed the Base URL values in the database and edited the local.xml file but my local development site is still referring to the online store.
How do I correct this?
The usual problem, changing your base urls and local.xml is only a minor part of the equation.
Step 3 was missed on moving the website to the development server.
Moving stuff is actually pretty darn simple.
a. Tar the public_html directory on the old server
b. Reinstall on the development system.
a. Disable caching in Magento on the old server, dump the database and then reenable the Magento cache.
b. Create a mysql database, user and grant permissions on the development system. Load the database dump into the database on the development system.
Do the one thing that most people ignore, go set your file permissions and ownership.
Change your base URLs using either mysql command line or phpMyAdmin.
Go eliminate every subfolder in the var/ folder, Magento will recreate it.
Finally, go make changes to your local.xml file to change the database access credentials assigned to the new database and bring Magento up.
If you have complete ownership of the server, do the above steps with the Apache server down until you've loaded all the data and made the permissions and file corrections. This prevents accidentally starting Magento in an unprepared state which can cache Magento's configuration which is why you are having this problem.
If you do not have proper permissions on the var/ folder and subfolders, Magento will write your Magento temporary and cache to the system temp and you end up with Mage's magically redirected Magento which eternally points to the original website.
Also, if you copy local.xml to another file to save it, name it something like local.xml.sv0 otherwise if it ends in .xml, Magento autoload each .xml file in app/etc/ and try to merge it with the contents of your local.xml file.
NOTE: What happens when you don't properly set file/folder permissions before running Magento for the first time after a move.

Resources