天天看點

zen cart -- 自适應配置檔案

即使你很熟悉zen cart的配置檔案,你可能熟悉的連第幾行是什麼配置都能記得,甚至有點不太在意。但是如果大批量建站,你還是會因為太忙而出錯。路徑配置錯了,域名為了修改了,建一個修改一下,很麻木。為了解放手和大腦,我簡單搞了個自适應的配置檔案

/added by george,only for  converience

$user = explode('/',dirname(__FILE__));

$path = $user[2];$domain = $_SERVER['SERVER_NAME'];

if ( substr($domain,0,4) != 'www.' ) {

$domain = 'www.' . $domain;

}

end of george customization

注:

取得路徑沒得說,隻是我把規範了一下,我把資料庫資料也通過變量,當然前提是你的資料庫名稱和資料使用者名命名有規則。你可能說會不安全,密碼當然不是一樣,其實搞成一樣的也沒什麼。mysql的使用者通常限制隻有本主機可以連接配接。即使讓人知道了也連不上,當然了,如果讓使用者擷取了SHELL權限,那無論你什麼配置,所有zen cart站的密碼還全是明文的。

很顯然,我這個寫的比較簡單,沒有考慮太多情況,隻适合我自己的情況。

下面就是前台的配置檔案,背景的配置檔案就不貼了。個人認為zen cart應該把前背景的配置合并,哪怕隻通過簡單的include也行。也許是不想互相依賴吧。

<?php
/**
 * @package Configuration Settings circa 1.3.8
 * @copyright Copyright 2003-2007 Zen Cart Development Team
 * @copyright Portions Copyright 2003 osCommerce
 * @license http://www.zen-cart.com/license/2_0.txt GNU Public License V2.0
 *
 * author george zheng <[email protected]>
 */


/*************** NOTE: This file is similar, but DIFFERENT from the "admin" version of configure.php. ***********/
/***************       The 2 files should be kept separate and not used to overwrite each other.      ***********/


/added by george,only for converience config

$user = explode('/',dirname(__FILE__));
$path = $user[2];
$domain = $_SERVER['SERVER_NAME'];
if ( substr($domain,0,4) != 'www.' ) {
    $domain = 'www.' . $domain;
}

/end of george customization

// Define the webserver and path parameters
  // HTTP_SERVER is your Main webserver: eg-http://www.your_domain.com
  // HTTPS_SERVER is your Secure webserver: eg-https://www.your_domain.com

/altered by george,only for converience config

  define('HTTP_SERVER', 'http://'.$domain);
  define('HTTPS_SERVER', 'https://'.$domain);

/end of george customization

  // Use secure webserver for checkout procedure?
  define('ENABLE_SSL', 'false');

// NOTE: be sure to leave the trailing '/' at the end of these lines if you make changes!
// * DIR_WS_* = Webserver directories (virtual/URL)
  // these paths are relative to top of your webspace ... (ie: under the public_html or httpdocs folder)
  define('DIR_WS_CATALOG', '/');
  define('DIR_WS_HTTPS_CATALOG', '/');

  define('DIR_WS_IMAGES', 'images/');
  define('DIR_WS_INCLUDES', 'includes/');
  define('DIR_WS_FUNCTIONS', DIR_WS_INCLUDES . 'functions/');
  define('DIR_WS_CLASSES', DIR_WS_INCLUDES . 'classes/');
  define('DIR_WS_MODULES', DIR_WS_INCLUDES . 'modules/');
  define('DIR_WS_LANGUAGES', DIR_WS_INCLUDES . 'languages/');
  define('DIR_WS_DOWNLOAD_PUBLIC', DIR_WS_CATALOG . 'pub/');
  define('DIR_WS_TEMPLATES', DIR_WS_INCLUDES . 'templates/');

  define('DIR_WS_PHPBB', '/');

// * DIR_FS_* = Filesystem directories (local/physical)
  //the following path is a COMPLETE path to your Zen Cart files. eg: /var/www/vhost/accountname/public_html/store/

/altered by george,only for converience config

  define('DIR_FS_CATALOG', '/home/'.$path.'/public_html/');

/end of george customization


  define('DIR_FS_DOWNLOAD', DIR_FS_CATALOG . 'download/');
  define('DIR_FS_DOWNLOAD_PUBLIC', DIR_FS_CATALOG . 'pub/');
  define('DIR_WS_UPLOADS', DIR_WS_IMAGES . 'uploads/');
  define('DIR_FS_UPLOADS', DIR_FS_CATALOG . DIR_WS_UPLOADS);
  define('DIR_FS_EMAIL_TEMPLATES', DIR_FS_CATALOG . 'email/');

// define our database connection
  define('DB_TYPE', 'mysql');
  define('DB_PREFIX', '');
  define('DB_SERVER', 'localhost');

  /altered by george,only for converience config
  
  define('DB_SERVER_USERNAME', $path);
  define('DB_SERVER_PASSWORD', 'fsdfG=u78988w?Kd-U9');
  define('DB_DATABASE', $path.'_db');
  
  /end of george customization
  
  define('USE_PCONNECT', 'false');
  define('STORE_SESSIONS', 'db');
  // for STORE_SESSIONS, use 'db' for best support, or '' for file-based storage

  // The next 2 "defines" are for SQL cache support.
  // For SQL_CACHE_METHOD, you can select from:  none, database, or file
  // If you choose "file", then you need to set the DIR_FS_SQL_CACHE to a directory where your apache
  // or webserver user has write privileges (chmod 666 or 777). We recommend using the "cache" folder inside the Zen Cart folder
  // ie: /path/to/your/webspace/public_html/zen/cache   -- leave no trailing slash
  define('SQL_CACHE_METHOD', 'file');

/altered by george,only for converience config

  define('DIR_FS_SQL_CACHE', '/home/'.$path.'/public_html/cache');

/end of george customization
// EOF