All posts by frank

Solved – phpList Temporary Directory for Uploading Is Not Writable

This applies to Windows O/S running Apache webserver, MySql database, and PHP installed. (a WAMP server installation).

Within the admin area of PhpList, you might get the following error when you try to upload / import a CSV file containing email addresses and associated contact information:

Warning: The temporary directory for uploading () is not writable, so import will fail

I tried setting $tmpdir in the config.php file, but this did not work.

Usually your upload_tmp_dir is not set in the php.ini file (on a global basis) because it is disabled with a leading semi-colon at the beginning of the applicable line.  This allows for setting the upload_tmp_dir separately for each virtual host / domain hosted with Apache server.

On your web server, find your path to the httpd-vhosts.conf file (like here /configs/apache/ ) and open the httpd-vhosts.conf file with your favorite text editor, such as Notepad++ editor.

Find the virtual host configuration section for your particular
# DOMAIN within which PhpList is hosted.

Under the area for

# Custom Global Settings (if any exist)

Using php_admin_value, insert the full windows path within the applicable virtual host / domain directory leading to your tmp upload directory for email address import using PhpList:

php_admin_value upload_tmp_dir “c:/hosted/username/public_html/domain_com/lists/tmp”

Ensure that the upload /tmp/ path is within your open_basedir restriction path which might be set in either your php.ini or httpd-vhosts.conf file.  In the https-vhosts.conf file it would look like this:

php_admin_value open-basedir “c:/path_with_domain_root;c:/windows:c:/other_outside”

Solved Cubecart MemCached error Open_BaseDir Restriction

Upon first install of CubeCart 6.0.6 on windows with apache and zpanel, you may receive the following warnings and errors at the beginning of the install and at the top of every cart/html page, as well as admin panel, following the install:

Warning: file_exists(): open_basedir restriction in effect. File(C:\php\pear/memcached.class.php) is not within the allowed path(s): (c:/zpanel/hostdata/username/public_html/your_domain;c:/windows/temp) in C:\zpanel\hostdata\username\public_html\your_domain\classes\autoloader.class.php on line 89 Warning: file_exists(): open_basedir restriction in effect. File(C:\php\pear/memcached.php) is not within the allowed path(s): (c:/zpanel/hostdata/username/public_html/your_domain;c:/windows/temp) in C:\zpanel\hostdata\username\public_html\your_domain\classes\autoloader.class.php on line 92 Warning: file_exists(): open_basedir restriction in effect. File(C:\php\pear/memcache.class.php) is not within the allowed path(s): (c:/zpanel/hostdata/username/public_html/your_domain;c:/windows/temp) in C:\zpanel\hostdata\username\public_html\your_domain\classes\autoloader.class.php on line 89 Warning: file_exists(): open_basedir restriction in effect. File(C:\php\pear/Memcache.php) is not within the allowed path(s): (c:/zpanel/hostdata/username/public_html/your_domain;c:/windows/temp) in C:\zpanel\hostdata\username\public_html\your_domain\classes\autoloader.class.php on line 92

Solution.  If memcached is not installed on your server, force “file” cache by adding the following line to the includes/global, inc:

$glob[‘cache’] = ‘file’;

That should be your solution.  I restarted apache, cleared my cache under maintenance in the admin dashboard, and then reloaded my website homepage.  Surprise, no warning or errors:

2015-07-26-CubeCart

ALSO SEE: https://forums.cubecart.com/topic/49962-warning-memcacheconnect-cant-connect-to-12700111211-connection-refused-111-in-classescachememcacheclassphp/  in case Memcached is not being properly accessed.

Open-Source SilverStripe CMS

SilverStripe CMS is an open source web content management system. It is a powerful tool for professional web development teams.  Web content authors rave about how easy it is to use.

Before installing, make sure to do the following:

  • Properly set the date.timezone in php.ini
    For example:
    date.timezone = “America/New_York”
  • Enable “Tidy” support library of code to clean up your html. SilverStripe should operate fine without Tidy, but HTMLCleaner will not be effective. For example, in php.ini you should enable – remove the leading semicolon in the following line:
    ;extension=php_tidy.dll
  • Find /framework/thirdparty/Zend/Loader.php and comment out as follows:

Go to: framework/thirdparty/Zend/Loader.php
at about line 190 you will find this foreach statement:

foreach (self::explodeIncludePath() as $path) {
if ($path == ‘.’) {
if (is_readable($filename)) {
return true;
}
continue;
}
/* COMMENT THIS OUT
$file = $path . ‘/’ . $filename;
if (is_readable($file)) {
return true;
}
*/
}

Hope it helps

[Warning] is_readable(): open_basedir restriction in effect. File(C:\php\pear/Zend/Translate/Adapter/I18nRailsYamlAdapter.php) is not within the allowed path(s): (c:/zpanel/hostdata/client/public_html/yourdomain_com;c:/windows/temp)

GET /

Line 198 in C:\zpanel\hostdata\client\public_html\yourdomain_com\framework\thirdparty\Zend\Loader.php

Source

189 
190         foreach (self::explodeIncludePath() as $path) {
191             if ($path == '.') {
192                 if (is_readable($filename)) {
193                     return true;
194                 }
195                 continue;
196             }
197             $file = $path . '/' . $filename;
198             if (is_readable($file)) {
199                 return true;
200             }
201         }
202         return false;
203     }
204