在本地wamp server测试环境下安装了prestashop 1.4.4.1版本,定制化好后就要传到服务器上,主机是hostmonster。移植步骤如下:

1. 将文件压缩用ftp上传到服务器上,解压,假设地址是http://mydomain.com/prestashop/

2. 将数据库文件导出,用notepad++打开数据库导出文件,搜索localhost,你会找到两条记录如下,具体时间或者id会不一样。

(176, 'PS_SHOP_DOMAIN', 'localhost', '2011-10-11 12:23:54', '2011-10-11 18:59:18'),
(177, 'PS_SHOP_DOMAIN_SSL', 'localhost', '2011-10-11 12:23:54', '2011-10-11 18:59:18'),

PS_SHOP_DOMAIN和PS_SHOP_DOMAIN_SSL位于ps_configuration表中,需要进行变更,这里更改为mydomain.com。在1.4版本之前移植不需要改这里,但1.4以后就把网站的地址写到数据库里了。

3. 假设本地目录叫做prestashop,搜索prestashop,可以找到如下记录

('__PS_BASE_URI__', '/prestashop/', '2011-10-11 18:50:15', '2011-10-11 18:59:18'),
如果服务器上的目录和本地目录名字相同,不用更改这条,如果放到服务器根目录下或者目录名字变了,那么这条也要做相应的更改。

更改好以后就到cpanel里创建一个数据库,然后将sql文件导入即可。也可以将数据库上传以后在更改这几项。

4. 更改配置文件,打开config/settings.inc.php,检查如下几项

define('__PS_BASE_URI__', '/prestashop/'); 如果是放在网站根目录下这里写"/"就可以

define('_DB_NAME_', 'prestasop_database'); 这里填写在服务器上创建的数据库名称

define('_DB_USER_', 'username'); 数据库用户名

define('_DB_PASSWD_', 'password');数据库密码

改好后在浏览器中打开就可以使用了,因为hostmonster的文件夹的默认权限755就可以上传文件,所以不存在更改文件夹权限的问题。

如果在本地配置时已经开启了friendly url并生成了.htaccess文件,在移植时如果本地目录名称和服务器上的目录名称相同,不需要做任何修改,如果放在服务器根目录或者目录名字有变化,那么就在.htaccess里面搜索本地目录的名称,在本例中是prestashop,搜索结果做相应替换,否则会导致网站被重定向到错误的目录。

在移植后访问网站,如果出现错误提示,解决如下:

Link to database cannot be established.

无法连接数据库,检查数据库名、数据库用户名、密码以及host是否正确。

Bad SubDomain SQL query

看看是不是只创建了数据库却没导入文件,或者数据库的表和数据不全