## 环境要求

- Unix, Linux 或 Windows
- Web服务器:Apache 1.3 或更高的版本
- PHP:5.2或更高版本
- MySQL:5.0或更高版本

PrestaShop也可以在Microsoft的 IIS Web server 6.0或更高版本,及nginx 1.0或更高版本上运行。

这些软件不愿意一个个安装的话,可以选择AMP集成包:

- XAMPP: <http://www.apachefriends.org/en/xampp.html> (Windows, Mac OS X, Linux, Solaris)
- WampServer: <http://www.wampserver.com/en/> (Windows)
- EasyPHP: <http://www.easyphp.org/> (Windows)
- MAMP: <http://www.mamp.info/> (Mac OS X)

PHP环境配置:

- GD 库
- Dom 扩展
- allow_url_fopen 启用

php.ini文件对应配置部分:

<pre class="brush: bash">
extension = php_mysql.dll
extension = php_gd2.dll
allow_url_fopen = On

# also recommended
register_globals = Off
magic_quotes_gpc = Off
allow_url_include = Off
</pre>

## 配置PrestaShop

### 禁用缓存及强制Smarty实时编译

在后台"Advanced parameters" 菜单下的"Performances"页面:

模板缓存:切换到"Force compilation"
缓存:切换到禁用

### 显示错误消息

打开/config/defines.inc.php文件

<pre class="brush: php">
/* Debug only */
define('_PS_MODE_DEV_', true);
</pre>

### 启用PrestaShop 多店模式

中文一般说商城。在后台通过设置页里可以进行启用。

### 配置文件

在/confige 文件夹下有三个主要的配置文件:

- config.inc.php
- defines.inc.php
- smarty.inc.php

config.inc.php

这是PS的主配置文件,是有后台自动生成的,不能直接去修改它。

defines.inc.php

此文件包含了PS的常量定义值。包含了所有文件和文件夹位置的定义。在开发/测试模式中,要查看所有错误消息:

<pre class="brush: php">
define('_PS_MODE_DEV_', true);
</pre>

在生产模式,就必须得尽量隐藏这些错误信息。

<pre class="brush: php">
define('_PS_MODE_DEV_', false);
</pre>

smarty.inc.php

Smarty相关的设置,Smarty自带的缓存系统与PrestaShop不兼容,所以必须保持禁用状态。

<pre class="brush: php">
$smarty->caching = false; //不能改动
$smarty->compile_check = true; //开发模式应该调为false
$smarty->debugging = false; //可以在显示页面上查看Smarty调试信息
</pre>

译 PrestaShop开发者指南 第三篇 设置本地安装环境的更多相关文章

  1. 译 PrestaShop开发者指南 第四篇 深入PrestaShop核心开发

    ## 访问数据库 ### 数据库结构 PrestaShop的数据库表默认带有ps_的前缀,前缀在安装时可以自定义. 所有表名都是小写,以下划线分割.当一个表表示要在两个实体间建立连接时,表名中两个实体 ...

  2. [译]PrestaShop开发者指南 第一篇 基础

    # 第一篇 基础 PS(PrestaShop简称)一开始就设定了能够在它的基础上很简单的构建第三方模块的机制,让它成为一款具有极高定制性的电子商务软件. PS的可以在三个方面进行定制: * 主题 * ...

  3. 译 PrestaShop开发者指南 第二篇 代码规范

    原文:<http://doc.prestashop.com/display/PS15/Coding+Standards> 废话不多译了,讲重点. 代码风格验证工具:CodeSniffer( ...

  4. SQL学习指南第三篇

    再谈连接 外连接 之前的范例都是没有考虑条件可能无法为表中的所有行匹配的问题 左外连接与右外连接 SELECT a.account_id, a.cust_id, b.name FROM account ...

  5. Angular开发者指南(三)数据绑定

    数据绑定 AngularJS应用程序中的数据绑定是模型和视图组件之间的数据的自动同步. AngularJS实现数据绑定的方式可以将模型视为应用程序中的单一来源. 视图是模型在任何时候的投影. 当模型更 ...

  6. Spring Security OAuth 2开发者指南译

    Spring Security OAuth 2开发者指南译 介绍 这是用户指南的支持OAuth 2.0.对于OAuth 1.0,一切都是不同的,所以看到它的用户指南. 本用户指南分为两部分,第一部分为 ...

  7. Java多线程编程实战指南(核心篇)读书笔记(三)

    (尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/76686044冷血之心的博客) 博主准备恶补一番Java高并发编程相 ...

  8. 解剖SQLSERVER 第三篇 数据类型的实现(译)

    解剖SQLSERVER 第三篇  数据类型的实现(译) http://improve.dk/implementing-data-types-in-orcamdf/ 实现对SQLSERVER数据类型的解 ...

  9. [译]AngularJS 1.3.0 开发者指南(一) -- 介绍

    [译]AngularJS 1.3.0 开发者指南(一) -- 介绍 Angular是什么 ? AngularJS是一款针对动态web应用的结构框架. 它可以让像使用模板语言使用HTML, 并且可以扩展 ...

随机推荐

  1. Windows下修改Oracle默认的端口1521

    数据库最好不对公网开放,如果要开放,最好把默认端口改掉,防止一些针对 1521端口的入侵 1.找到 product\11.2.0\dbhome_1\NETWORK\ADMIN 下面的  listene ...

  2. Hadoop - Azkaban 作业调度

    1.概述 在调度 Hadoop 的相关作业时,有以下几种方式: 基于 Linux 系统级别的 Crontab. Java 应用级别的 Quartz. 第三方的调度系统. 自行开发 Hadoop 应用调 ...

  3. HBase - Phoenix剖析

    1.概述 在<Hadoop-Drill深度剖析>一文当中,给大家介绍了Drill的相关内容,就实时查询来说,Drill基本能够满足要求,同时还可以做一个简单业务上的聚合,如果在使用Hive ...

  4. 管理批量邮箱 FOXMAIL 和网易闪电邮(PC端)有什么区别? 对比

    喜欢用FOXMAIL有订阅功能&lt;img src="https://pic1.zhimg.com/fa72df2440f84043a5275b90df30b2f4_b.jpg&q ...

  5. Oracle的model语句入门-转

    Model语句是Oracle 10g的新功能之一. 本文通过一些简单的例子帮助理解Model语句的用法,复杂使用场景请参考其他文章. 环境:当然需要Oracle 10g以上,本人是在11g上测试的. ...

  6. pdf嵌入字体

    论文提交时,要求所有的字体都是嵌入的,为这个问题折腾了很久,发现了一个很好的答案,记一下: http://stackoverflow.com/questions/4231656/how-do-i-em ...

  7. Ubuntu下的防火墙

    Ubuntu下的防火墙Gufw-ufw Gufw是ufw的桌面版本,网上有Gufw的安装和配置方法,但是我认为并不是很好.网上的教程也有点愚弄大众的嫌疑,因为按照他的说法,最后防火墙根本就无法自动启动 ...

  8. Go目录

    1. Go语言获取项目当前路径 2. Go语言TCP/UDP Socket编程 3. Go语言实现HashSet

  9. bat 结束进程

    @echo offEcho 先等待7秒..等待启动其他软件ping 127.0.0.1 -n 60Echo 正在杀死进程...taskkill /f /im funshion.exetaskkill ...

  10. 封装系统自带的Debug

    Unity3d的Debug.Log函数用于打印日志,一般项目中都会对其作如下两件事情: (1)希望有一个总的开关来控制整个游戏中日志的打印与否: (2)有的系统会将Log封一层并添加统一的标记,比如S ...