Configure Drupal temporary directory outside of web root - php

I am trying to configure the temporary directory on my Drupal install. Previously, I have been on a cPanel shared account, and all I would simply do is add '../tmp' to the settings and it all worked fine. I have recently outgrown my shared account and upgraded to a VPS, with CentOS and VestaCP. Now, when I enter '../tmp' it says that the folder 'does not exist and could not be created.' I have checked, and that folder is indeed there via file manager and FTP, is 755 permissioned etc. No matter what I try, it just doesn't seem to want to acknowledge it is there.
My CentOS and VestaCP installs have had VERY little tweaking, so they are pretty much default installs at the moment. I was advised to try a path such as:
/home/admin/web/MYDOMAIN/tmp
Other attempts have been:
/tmp and /home/admin/web/*/tmp
But they all threw up the same error. If I type just 'tmp', it works fine, but is then obviously within the web root directory, which is not ideal. Help?

In the end, it turned out that the best way is to use the pre setup and designated tmp folder for the whole install, which is located at /home/admin/tmp. This also allowed for uberCart credit card processing as well, which wasn't available via a normal ../cc either. The folder also allows for directories, so you could separate between domains and requirements, i.e.
/home/admin/tmp/domain.com or /home/admin/tmp/cc/domain.com

Related

Laravel Godaddy hosting: View not Found [Works locally]

I am trying to deploy a Laravel app onto godaddy shared hosting. And have tried several solutions mentioned on this site and others, such as:
-Hosted Laravel 5.4 App shows "View [path.to.viewfile] not found."
-View [auth.login] not found at Shared Hosting Godaddy
However, my views still cannot be found, for some unknown reason that I cannot tell. I have tried the solutions mentioned here, but to no avail.
I checked the spelling of the views since Linux server is case sensitive.
the specific error can be viewed at : auctionSalvages.com
but in short::: View [simpleComponents.HeaderComponents.MainHeader] not found. (View: /home/hostname/AutoShop/resources/views/layouts/main.blade.php)
I have now successfully executed the following php artisan commands: clear-compiled,cache:clear,config:clear,route:clear and view:clear on the server through ssh.
but my view still returns above error..
any more ideas???
This may be a few years too late but here a few things you need to consider if this happened.
Make sure that all the files in the Public folder of your app is copied into the public_html folder of your godaddy hosting site. Make sure that the Settings in your cPanel File Manager (which is generally at the upper right corner) that Show Hidden Files (dotfiles) is checked.
Make sure the you have the .htaccess file in your public_html folder with the correct permissions.
Typically, when you transfer files into your hosting site, you do so by uploading a zip file and then extracting the zip file in the root directory of your site.
And then, when you copy the files from the Public folder of your app, you generally just Select All > Copy > Select public_html
However, sometimes, the files in your Public folder are hidden so you have to set the settings to Show Hidden File (dotfiles) to checked.

Yii - Application runtime path "{path}" is not valid. Please make sure it is a directory writable by the Web server process

I'm very new to Yii, so please bear with me. I've an existing XAMPP setup on my MacBook, and an existing project I need to take a look at. At first the project was looking for a yii.php, so I downloaded the appropriate version (1.1.17), and extracted that to /htdocs/.
I renamed it to yii, and set the yii directory in my index.php to:
$yii=dirname(__FILE__).'/../../yii/framework/yii.php';
For reference, the project has the following directory: htdocs/cdforum/web/index.php
With everything in place, or so I think, I started up XAMPP, and loaded http://localhost/cdforum/web/index.php only to encounter the following error:
throw new CException(Yii::t('yii','Application runtime path "{path}"
is not valid. Please make sure it is a directory writable by the Web
server process.'
I have seen some people get past this by setting the yii folder's ownership via chown to their own, or apache, but the first option didn't work for me, and apache apparently is an illegal user name.
Anything else I can try?
Change your username:group in httpd.conf file of Apache:
About line ~181-182:
To your user in your Mac.
Don't change the Apache User and Group. There are very good reasons why Apache has it's own user and group. Here's a simple example of what can go wrong...
While developing you make a mistake in your app and delete files
recursively in a directory, this directory has a sym link that you
follow into your home directory and you delete everything in your home
directory. This cannot happen if the users are different.
In production if you changed the owner of the user/group to a real user account the you'd almost certainly incur the wrath of the OPS department ie you're creating a security hole, a bad one.
The correct thing to do is to do what it asks ie make the directory writable by the apache process ie use chown or chmod. If you are developing then use this, in production this is also bad...
chmod 777 ./path/to/directory
In prod the directories apache need to write to would either have group write permissions for the apache user or be be owned by the apache user. Only those directories that it requires write access to, nothing else.

WordPress - unable to upload images

I have a WordPress site on my webserver and have recently copied it to my localhost testing environment using XAMPP (bitnami) to work on it, and proceeded to re-upload the site back to the server without issue.
Now, everything is functioning fine except for uploading images. Whenever I attempt to upload them, it says it cannot write to the directory.
I have tried turning off date/time arrangement of images, I've tried manually creating the folder its trying to use and temporarily setting the permissions of it to 777 and it works. However, when I change them back to 755 it stops allowing uploads again.
Like I said this has only happened since copying my localhost wordpress back. I've read it may be due to the account WordPress is using to create/write files. Is there any way to find out what this account is? And how would I ensure it has the correct permissions? Could it somehow have inherited the Bitnami XAMPP WordPress account since I copied the files/DB over?
I have access to my sites cPanel if that helps.
don't change permissions change owner
sudo chown www-data:www-data /folderName

Open file using modify address instead of default address

When XAMPP is installed, we can open file using URL like localhost/home.php. Can we open the very same file like (for example) using an URL like hamzazafeer.com/home.php or www.hamzazafeer.com/home.php? Is there any way or we can't change this address?
You can override the domain target to localhost. That means that your browser "thinks" that the domain is on localhost. The browser will fetch then the local files instead of calling a remote server. To do that you have to edit in C:\Windows\System32\drivers\etc a file named hosts. Depending on your operating system and settings it could be a little hard to edit the file. But you will find further specific information with the help google.
The row you have to add into this file will look like:
127.0.0.1 hamzazafeer.com
Yes and no.
Yes, you can. In default XAMPP installation, it always points to some default folder (htdocs folder in its root folder under Windows, /var/www under Linux etc.) This answer may help you locating this folder in your installation of XAMPP).
You can install (FTP copy) XAMPP on any hosting, where your domain hamzazafeer.com currently points to, and properly configure it (both hosting and domain) to point to your XAMPP's default websites folder and you're ready to go.
(BTW: You're mixing certain things. XAMPP nothing to do with this, it is Apache's configuration variable plus XAMPP / Apache has nothing to do with this in general -- you can point your domain to any folder on any hosting, no matter, what server software is used to serve your website)
No, you shouldn't. XAMPP is from the begining to the very end designed as localhost, test-purpose-only, developer-only solution. You should ever, never use it for serving production version your websites or anywhere on any publicly-accessible hosting. Limit it only to your localhost, as it was meant by XAMPP's creators.

Magento connect doesnt install extension

After moving a site from local to remote server. I cannot get the magento conect manager to install extensions. No obvious info regarding this paticular error online.
If give an extension url....it will show the preloader for a few seconds, before returning to the connect page, with no error.
If use the package uploader, initially i had a 'could not move files' error...but changing certain dirs to 777 fixed this. I did set all folders to 777, to test if this helped. It didnt.
Anyone know this error? Otherwise manual extension installs for me :(
Could this be apache related....or moving files via FTP from local to remote server? I say this based on some forum posts i read.
Thanks
S
If the following files exist try removing (or renaming if you prefer to be safer) them.
downloader/connect.cfg
downloader/cache.cfg
These are generated by Magento the first time you use connect. The cache file stores a full path to your install, so when you move to a new server this likely isn't a valid path.
chmod 777 var/package/tmp/package.xml
should do the trick.
the directory is from your magento home directory.
Maybe you run out of disc space. I raised disk quota on my server for this account, and the problem disappeared.
If you have SSH/CLI access and are using Magento 1.5+, try running ./mage mage-setup .
If you're on Magento 1.3.x or 1.4.x delete the files in /downloader/pearlib/cache/ and try again.
If you have cpanel hosting where the apache is configured to work with users such as nobody, apache etc.. then the problem is that. the owner of /home/user/public_html/var/package/tmp/package.xml will your cpanel user but this requires apache users permission. so the choice is to temporarily change the file permission to 777

Categories