Common Site Errors
Q: Can I use AllCommerce with PostgreSQL?
Yes, but here are the issues:PostgreSQL doesn't implement the MySQL password function. We will be moving encryption back into the coresystem as a pair of functions
os_hash(string, key, options):hashed_string
os_unhash(hashed_string, key, options): string
All code requiring simple encryption will operate through these functions including passwords and giftcertificate "user-visible" ID numbers, among others.
AUTO INCREMENT column type is not supported in PostgreSQL. The classical "series.nextval" feature works in mostother products. There are a few which guarantee only uniqueness, not sequentiality. The latter may bea future issue.
PostgreSQL does not support column type, int(size). We have condensed the column types in 0.9.x to include only:
4-byte integers character fields of specified length (1-254) real number text fields of indeterminate length
We have implemented integer time and currency as real numbers. We have also added a class for arbitrary datatypes internally to support output format control and validators. (See the Classes doc.)
PostgreSQL uses "//" for comments instead of "#". We will be specifying our own data format for initial dataload files. This will cure that problem.
PostgreSQL converts all identifiers to lower case. As of 0.9.4 we will respecify that upper case field names willbe used solely for parsed form variables. All SQL will use lower case identifiers.
Q: Can the default directory of AllCommerce be changed from
THIS IS CURRENTLY IN BETA TEST
If you run into problems
please post them to the devel mailing list
Yes. The following steps allow you to change the default directory
Step 1: Create a directory off of your ServerRoot directory
Step 2: Expand your tar ball in the new directory
Step 2a: If your using bitkeeper clone the repository in the new directory
Step 2: Open path.pm in your editor - change /home/httpd/os_allcommerce
to reflect your system settings
Step 3: Open ./conf/Sitepm.Dir in your editor - change /home/httpd/os_allcommerce to your path
Step 4: Run setpmdir.pl - found in base directory
Step 5: Run configure.pl - found in base directory
This will reset your path for Zelerate AllCommerce. Once these steps are
completed you will need to run configure.pl to complete the installation.
Q: Configure.pl error: Can't find Sitepm.Dir
This error occurs when your allcommerce base directory is different from the
default directory. The following steps fix this problem.
Step 1: Open the ./conf/path.pm file in an editor
Step 2: Change /home/httpd/os_allcommerce to reflect your system settings
Step 3: Run setpmdir.pl - found in base directory
Step 4: Run configure.pl - found in base directory
Common Site Errors
Q: When I run the generate_site.pl script I get the following errors:
[root@monster-net crons]# ./generate_site.pl presents Can't
locate DBI.pm in @INC (@INC contains:
/usr/lib/perl5/site_perl/5.005 .) at ./generate_site.pl line
166. BEGIN failed--compilation aborted at ./generate_site.pl line 166.
You need to install Perl DBI which consists of two modules, the generic DBI module and a DBD module for yourspecific database system (default is MySQL). See the installation notes for details.
Q: I've made change XXX to fix problem YYY. When I go back to my browser and try it again the problems hasn't gone away. What now?
Consider whether the problem may require you to regenerate your site.
Or, your browser may have cached the old, incorrect page. Close and reload your browser and try again.
Q: When I proceed through checkout I am not receiving the e-mailed confirmation.
You may need to check the server's e-mail configuration. Verify that you can send e-mail from that server. Then,you may need to customize ./cgi-bin/om/ssl/checkout.cgi for your server.
Check the system mail spool for bounces. It may be an addressing issue. It may be an issue of a misspecified site.pmparameter.
Q: How do you delete an order?
We don't allow order deletion since there is a high probability that orders would be nuked sooner or later that shouldhave stayed. Instead, an order can be flagged as inactive. Check the values for "status" field in the orders table.
Q: How do I delete an item?
You can flag an item as "inactive" or "non-display" in the content manager. We generally do not delete items, but markthem as inactive to prevent accidental re-use.
Q: How can I implement multiple virtual stores on one server?
Use multiple <VirtualHost> sections in your httpd.conf.
Here are the instructions for sharing common code through all the stores: Multiple Stores Document
Q: Is the home page generated or is it done manually?
home.shtml should be a symbolic link to the object that you have selected to be your homepage. This is not automatedjust yet -- there are some complex issues with automating it, mostly with sites that have multiple "entry" pages.... Ifit isn't created, just make the symlink yourself. If you want to hand-craft any pages, be certain to follow the namingconventions and put them in the "man" directory under the html directory. They will be symlinked to the html directorywhen the generator runs.
Q:I create a Brand through the Content Manager, but it does NOT show up in the Brand pulldown list. What is wrong?
This is a side affect of a Permissions Problem. When shipped, all filesand directories in os_allcommerce are owned by user nobody, group nobody. Ifyou do a ls -l in any of the directories, you will see the following:
rwxrwxr-x 1 nobody nobody 13810 Sep 18 05:57 filename.pm
The ownerships are set this way because the default user and group in theApache Server configuration is nobody and nobody.
If you change your Apache User or Apache Group, you must change the ownershipof all files and directories under the os_allcommerce directory to be the Apache User and the Apache Group.
For example, if you have an Apache User of httpd, and an Apache Group of httpd,then you need to do the following from the os_allcommerce directory:
chown -R httpd.httpd *
If you want to understand more about the chown command, you can type'man chown' at the command line.
Once you do this, go back into the administrator and create a brand. If itis added to the pulldown you are done. If not, then continue on.
If you still don't get the brand in the pulldown list, do the following in thedirectory:
ls -l 47004*
If you do NOT have a file, then the brands have not been generated at all.You still have a permissions problem.
If the file exists, view it to see if it has all of the data that you wereexpecting to show up in the pulldown:
If it does, then we know that you can write to this directory.
Next, type the following:
ls -l sel_sku_series.sel
If you get a file that is NOT linked to 47004.sel (you can tell if a file islinked if it has a -> and another filename after the filename that you areexpecting), then type the following:
ln -fs 47004.sel sel_sku_series.sel
chown user.group sel_sku_series.sel
WHERE user is the Apache User name
group is the Apache Group name
Once you do this, go back into the administrator and create a brand. If itis added to the pulldown you are done. If not, then email the developerslist attaching the output from the above steps, and indicate that you cannotget the Brand pulldown to populate after performing the steps in the FAQ.
I cannot enter information in Inventory, it just has a bunch of titles, with no enterable fields. What do I need to do?
You must configure a warehouse prior to assigning inventory. Go to the Content Manager and create a warehouse, then return to assign inventory.
Q: How do I get past the login screen?
If you are trying to run AllCommerce with a specific domain for example www.example.org, then you must make the below changes to the sitedomain and siteserver in the machine.conf and httpd.conf. Then run the update_conf.pl script in the crons directory file and restart your Web server.From the machine.conf file:
The site domain name for the server you have OS Allcommerce installed.
For example: '.mydomain.com'
The server name for your site.
For example: 'www'
Same as sitedomain unless using a different ssl server domain.
Same as siteserver unless you have a different secure server.
Leave as is if you are using a secure server. Change to 'http' if you are not going to use a secure server.
Also have your httpd entry:
AddHandler cgi-script .cgi
AddType text/html .shtml
AddHandler server-parsed .shtml
Options Indexes Includes FollowSymLinks ExecCGI
Allow from all
If problem persist, please post question to the mailing lists.