Gil_e_n Posted February 8, 2006 Share Posted February 8, 2006 At some point, pretty much everyone's going to have to move their osc store. And figuring out the osc configure files can be kind of tough. When you move your website, there are two files that you'll need to change. One is the includes/configure.php, the other is the admin/includes/configure.php. I will be using widgetsofdoom.com in my example. Below is my includes/configure.php file. // Define the webserver and path parameters This is the osc team telling you what this page is. It's where osc finds out what domain it's on and where links should be made. An error on this page [i]will[/i] screw up your entire website. [code]// * DIR_FS_* = Filesystem directories (local/physical) What this means, is when a definition starts with DIR_FS_something, you need the entire link. Not the usual url, but the actual location of your file on the server. If you don't know that, go to admin -> tools -> server info. Look for document_root. It should look something like this: DOCUMENT_ROOT: /htdocs/widgetsofdoom Or it might not. The address can look entirely different. The important part is the document_root bit. [code]// * DIR_WS_* = Webserver directories (virtual/URL) This is what you usually think of as the address. I.e. the url. In this case, widgetsofdoom.com define('HTTP_SERVER', 'http://www.widgetsofdoom.com'); // eg, http://localhost - should not be empty for productive servers ...I don't need to explain this, right? This is the url of your website. Not of your oscommerce installation - that comes later. Just your website. define('HTTPS_SERVER', 'https://secure.widgetsofdoom.com'); // eg, https://localhost - should not be empty for productive servers This is for the part of your site that is secured. If you don't have an SSL certificate, it's the same as the url above. If you do, it must be the exact same address that is on the certificate. I repeat, the. Exact. Same. Address. Any other address will get a nonsecure warning. define('ENABLE_SSL', true); // secure webserver for checkout procedure? Or, if you don't have SSL, you can just have this as false, and it'll never direct you to the HTTPS_SERVER. For the most part, this should be true, though. define('HTTP_COOKIE_DOMAIN', 'www.widgetsofdoom.com'); Hell if I know what the cookie domain is used for. Anyone reading this who wants to explain, feel free. However, as far as I can tell, this should your url. define('HTTPS_COOKIE_DOMAIN', 'secure.widgetsofdoom.com'); And in a similar manner, this should be your secure url. define('HTTP_COOKIE_PATH', '/'); This should be the same as your DIR_WS_HTTP_CATALOG. define('HTTPS_COOKIE_PATH', '/'); And this should be the same as your DIR_WS_HTTPS_CATALOG. define('DIR_WS_HTTP_CATALOG', '/'); This is your catalog directory - where osc on your server. By default, this should be /catalog/ - if you have it in a catalog file. If you have in in the root of your server, just leave it the way I have here. define('DIR_WS_HTTPS_CATALOG', '/'); I don't think very many people actually have a separate directory for the secure part of their website, so just leave this the same as the above, unless you do have a separate directory. But that's a separate question, that'd just complicate things. define('DIR_WS_IMAGES', 'images/'); define('DIR_WS_ICONS', DIR_WS_IMAGES . 'icons/'); define('DIR_WS_INCLUDES', 'includes/'); define('DIR_WS_BOXES', DIR_WS_INCLUDES . 'boxes/'); 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/'); Just leave these be, unless you've been changing things around. These are defining the subfolders of oscommerce. If you want to add some folders, like, for example, a subfolder for videos on your website, here's where you put it. If you want to rename some of your subfolders, here's where you change it so that osc knows the new names. define('DIR_WS_DOWNLOAD_PUBLIC', 'pub/'); Ditto on this. [code] define('DIR_FS_CATALOG', '/htdocs/widgetsofdoom/'); This is where you use that document_root thing I mentioned. Copying it will get you to the root of your site. If you have oscommerce installed in a subfolder, add catalog to the end, like this: /htdocs/widgetsofdoom/catalog/. [code] define('DIR_FS_DOWNLOAD', DIR_FS_CATALOG . 'download/'); define('DIR_FS_DOWNLOAD_PUBLIC', DIR_FS_CATALOG . 'pub/'); I don't deal with these, so I just leave them alone. // define our database connection define('DB_SERVER', '127.0.0.1'); // eg, localhost - should not be empty for productive servers This is the IP number of your database server. Or you might be able to use a URL - I have no idea. Both my sites use the IP number, because that's what our webhost provider told us to use. Just call your webhost provider, and do what they tell you. define('DB_SERVER_USERNAME', 'root'); The username you need to access your server. It probably isn't this, because this is the default username for mysql. Ask your webhost provider. define('DB_SERVER_PASSWORD', 'passwordgoeshere'); As I'm sure you can figure out by now that this is your password, and ask your webhost provider. define('DB_DATABASE', 'oscommerce'); This is the name of your database. If you had to ask your webhost provider to create it for you, ask them what it is. If you created it yourself from your webhost admin, you should know the name. define('USE_PCONNECT', 'false'); // use persistent connections? define('STORE_SESSIONS', 'mysql'); // leave empty '' for default handler or set to 'mysql' Just leave these like this. If you have a dedicated server, you can switch STORE_SESSIONS to '' if you like, but do not do it on a shared server. Parts of admin/includes/configure.php are identical. I'll just cover the parts that are different. define('HTTP_SERVER', 'http://www.widgetsofdoom.com'); // eg, http://localhost - should not be empty for productive servers Guess what! It's the same as http_server on includes/configure.php. Amazing. Note, however, if you want your admin area to be secured under your ssl certificate, which you probably do, this should be what you have under https_server in your file above. define('HTTP_CATALOG_SERVER', 'http://www.widgetsofdoom.com'); This is the link to your catalog. If you have your shop in the root of your website, it'll be the same as the above. If not, it'll be something along the lines of http://www.widgetsofdoom.com/catalog. define('HTTPS_CATALOG_SERVER', 'https://secure.widgetsofdoom.com'); Same as above, only pointing to the secured catalog. I.e. if your website's in the catalog directory, it would be https://secure.widgetsofdoom.com/catalog. define('ENABLE_SSL_CATALOG', 'true'); // secure webserver for catalog module Set to true if you want ssl to be enabled when linking to the catalog from the admin, false if you don't. Same as above, except it is the root folder, rather than the catalog folder. Even if your site's in the catalog folder, this goes to the admin. [code] define('DIR_WS_ADMIN', '/admin/'); // absolute path required Your admin directory, the url version. If your store is a subfolder in your root (i.e. it's in a folder called catalog), then it would probably be /catalog/admin/. If you want to change your admin location to deter hackers, here is one of the two places you change it. define('DIR_FS_ADMIN', '/htdocs/widgetsofdoom/admin/'); // absolute pate required This is much the same as the document_root, except you add on the catalog folder, if needed, and the admin folder. This is the other place you change admin location. define('DIR_WS_CATALOG', '/'); // absolute path required define('DIR_FS_CATALOG', '/htdocs/widgetsofdoom/'); // absolute path required Much the same as the two above it, except pointing to the catalog folder, or the folder containing oscommerce. Unless you're doing something funky with your website, just remove admin/ from the end of the previous two definitions, and it'll work. define('DIR_WS_IMAGES', 'images/'); define('DIR_WS_ICONS', DIR_WS_IMAGES . 'icons/'); define('DIR_WS_CATALOG_IMAGES', DIR_WS_CATALOG . 'images/'); define('DIR_WS_INCLUDES', 'includes/'); define('DIR_WS_BOXES', DIR_WS_INCLUDES . 'boxes/'); 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_CATALOG_LANGUAGES', DIR_WS_CATALOG . 'includes/languages/'); define('DIR_FS_CATALOG_LANGUAGES', DIR_FS_CATALOG . 'includes/languages/'); define('DIR_FS_CATALOG_IMAGES', DIR_FS_CATALOG . 'images/'); define('DIR_FS_CATALOG_MODULES', DIR_FS_CATALOG . 'includes/modules/'); define('DIR_FS_BACKUP', DIR_FS_ADMIN . 'backups/'); Just defining all the subfolders. If for some reason you're integrating some more subfolders into osc admin section, here's where you define them. Otherwise, just leave them alone. Please note that there are other ways of doing your configure file that can be slightly different, but will nonetheless work. Slashes tend to be a nagging problem when changing your configuration file - if your links are broken, and you're pretty sure you had it right, check for missing/too many slashes. Any comments/criticisms/questions welcome. Always BACK UP your files and your database before making any changes. Before asking questions, check out the Knowledge Base. Check out the contributions to see if your problem's solved there. Search the forums. Useful threads: Store Speed Optimization How to make a horrible shop Basics for design change How to search the forums Useful contributions: Easypopulate Fast, Easy Checkout Header Tag Controller Link to comment Share on other sites More sharing options...
This topic is now archived and is closed to further replies.