即使你很熟悉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