请选择 进入手机版 | 继续访问电脑版

衡水摄影网

 找回密码
 立即注册
快捷导航
查看: 105|回复: 1

Prestashop 加速优化配置 [复制链接]

Rank: 8Rank: 8

发表于 2018-9-1 08:57:48 |显示全部楼层
本帖最后由 老镜头 于 2018-9-1 08:59 编辑

刚接手一服务器,根据需求对 Web 网站进行优化,当前网站的访问量并不大每天的访问量也就是几千,在 google 统计平均的访问速度是7-9秒这样。购买的转化率不是很好。


当前主机配置,是一台独立主机服务器,线上有两 Web 网站

系统: Linux

内存: 4G

CPU: 4核


Web 的配置环境

MySql: 5.6.37

Nginx: 1.10.2

PHP: 5.6


这是一台我接收的服务器,在查看当前运行程序时发现,有几个无关应该程序正在运行着。且有其它的用户在登录(使用 w 命令查看)

. 修改 root 用户密码,查看是否有其它无关用户,踢出无用的登录用户。

.kill 运行无关的应用程序

. 删除定时执行的应用脚本


查看服务器压力其实并不大的。主要还是 prestashop Web 这框架在前端加载请求的数据太多了。

查看 nginx 的访问日志发现还有几个无用的 Web 应用程序正在运行着,看似访问量还挺大的。清理这些无用的 Web 应用。

查看 php error 日志发现

  server reached pm.max_children setting (100), consider raising

   有出现这样的问题

   根据实际需求修改值

   查阅文档:https://lirongyao.com/server-reached-pm-max_children-setting.html


Ok 处理以上问题后我们再回过头来看看prestashop 这Web应用程序

在 google 统计中主要问题在于加载时间过长。

在查看首页面加载时发现,页面所需加载的 css、js、文件太多了而且还不小。

在此还发现,页面中的资源在服务器响应前并没有进行压缩

在网站还找到一些关于 prestashop 加速的文章

https://blog.csdn.net/fyh2003/article/details/44590669


针对以上的问题进行处理

1. 做 Nginx 配置的优化,主要是开启gzip资源压缩功能

  gzip on;

  gzip_min_length 1k;

  gzip_buffers 4 16k;

  #gzip_http_version 1.0;

  gzip_comp_level 2;

  gzip_types text/plain application/x-javascript application/javascriptapplication/octet-stream text/css application/xml text/javascriptapplication/x-httpd-php image/jpeg image/gif image/png;

  gzip_vary off;

  gzip_disable "MSIE [1-6]\.";

   我的安装过程


2. 开启 prestashop 本身的一些优化功能

  . 开启 smarty 缓存

   Advanced Parameters -> Performance -> SMARTY

  . 将项目中的 css 、js 资源合并

   Advanced Parameters -> Performance -> CCC (COMBINE, COMPRESSAND CACHE)

  . 开启并配置缓存

    这里说的缓存是缓存系统(Memcached,Xcache...)

    目前访问量还不大,所以并没有配置此项


3. 使用 CDN 技术,我们是外贸电商,客户是全球的所以我认为这个是有必要的

   我使用的是Prestashop 推荐的  www.cloudflare.com

   我的CDN配置过程


经过以上的折腾在这几天终于看到效果了,平均速度降到4-5 秒这样了


现在咱们 PHP 都已经发展到了7 了,可这服务器还在用 5.6 实在是受不了

在升级的过程中我出现了一个非常 low 的错误,哎...

配置的过程是这样的

首先我们在升级中需要保证之前的版本不能出错,在切换使用时如果新版服务器有报错或者程序不支持,需要可以马可以切回

. 在安装PHP7.2 成功后我们需要将端口监听的默认值进行修改, 然后进行启动,新版与旧版端口使用不一样,以变在 Nginx 服务配置进行切换

. 这里需要注意运行用户的配置,我晕哪,在我配置时就没有注意到这块,在切换使用新版时就报服务器出错,找到错误日志才发现这一问题

user = test

group = test

这里需要设置与旧版配置相同,不然就没有权限执行了。

我的安装过程


不过很遗憾最终还是没有使用高级版本,因为 Prestashop Web 程序安装了一个 Bog 模块,代码上有不支持的


好了最后的一需求了

添加 SSL





今天,您的访问者只需要1秒就可以离开你的网上商店。像亚马逊这样的顶级网店告诉我们如何竞争和割喉式的电子商务市场。

一个非常有趣的故事和强大的竞争性,是Amazon.com的CEO和创始人杰夫·贝佐斯()用来满足每一个早晨,他的IT团队来检查的主要竞争对手的加载速度,以确保他们比至少比竞争对手快2次。

我不会对你撒谎,加快您的网站是繁琐和技术。然而,良好的Prestashop的是,几乎可以为你执行所有的任务!
为了取得成功,通过这10个技巧让它变得简单:

1。请确保你的模板引擎Smarty的配置是否正确

在你的管理面板“,然后单击”Preferences“选项卡,然后在”Performance“,检查”Smarty“部分
检查“Force compile”被定义为假
检查“Cache”被定义为真
2。允许CCC(Compress, Combine, Cache 压缩,合并,高速缓存)

在你的管理面板“,然后单击”Preferences“选项卡,然后在”Performance“,检查”CCC“一节(合并,压缩和高速缓存)
启用 everything 除了 “High risk HTML compression”
3。使用Ridjnael加密而不是 Blowfish加密的cookie

在你的管理面板“,然后单击”Preferences“选项卡,然后在”Performance“,勾选”Ciphering“一节
选择“Ridjnael”,而不是“Blowfish”

注意:您需要在服务器上安装PHP的mcrypt扩展,否则你会得到一个错误信息。

4。切换到新的目录树的图片

随着新的Prestashop 1.4版,它提供了不同的图片存储体系。其主要目标是避免100,000张图片“/ IMG /P”在相同的文件夹内。相反,图像可能会被分散到子文件夹中(例如:“/ img/p/1/2 /”等)。

如果你升级你的商店的Prestashop在以前的版本中,你必须特别来处理以获得这种改进的好处:

在你的管理面板“,然后单击”Preferences“选项卡,然后在”Images“,检查”移动图片“一节
由于该过程可能需要一些时间,确保您的服务器可以运行PHP脚本超过30秒。如果你不确定,问你的主机公司。

5。创建子域的JavaScript文件,CSS文件

创建一个子域js1.mystore.com的,并请求您的主机公司,转到/ JS /
创建一个子域js2.mystore.com的,并要求您的主机公司转到/theme/mytheme/ JS /
创建一个子域css1.mystore.com的,并请求您的主机公司,转到/ CSS /
创建一个子域css2.mystore.com的,并要求您的主机公司直接/theme/mytheme/ CSS /

这4个子域将允许您的客户端同时加载多个文件。一般来说,一个Web浏览器被限制到八个平行的下载。每个子域加入8个新的并行下载,因此总共得到40个并行下载(主域+ 4子域)。

6。设置一个CDN

你应该有全球思维,你的网站需要迅速加载在世界各地随处可见。这就是为什么运行CDN(内容分发网络)被认为是最有效的,以减轻你的服务器和访问者之间的差距。

Prestashop已与行业内最好的CDN公司,CloudCache。 CloudCache模块提供100%免费并且Prestashop的用户有特定的优惠当使用“PRESTA25?优惠券在他们的网站上。

下载CloudCache模块
在店内安装的模块
使用“PRESTA25?优惠券在CloudCache上创建帐户
使用CloudCache的API密钥配置模块

你就大功告成了!该模块将保证图像会被自动同步使用CDN。

7。所有的小图片合并到一个大的使用CSS sprites

您的访客每次加载网页从商店,他们的浏览器需要加载约75至100张照片。许多这样的小装饰图,可以很容易地合并成一个大的图片,被称为“CSS Sprite”。

这种方法的主要优点是:

更快的页面加载
占用更少的服务器(该服务器将提供1个文件,而不是100)
较小的HTML文件

只有1缺点是随着时间的推移的可维护性,事实上,它是耗时的,加入新的图像为你的Sprite(编辑图像,定位坐标,等)。

如果您有自己的服务器,请您的主机公司做这些配置:

8。启用XCache,APC,甚至或者memcached的,默认的Prestashop缓存系统

Memcached是一个免费的分布式的内存对象缓存系统。这是很简单,但功能强大,而且易于设置。这是能够解决许多问题,面对大量的数据高速缓存,它已经被维基百科使用,Twitter还有Craigslist。

Prestashop已经被预先设计了memcached,可以轻松启用:

请咨询您的主机公司允许您使用memcached
在你的管理面板“,然后单击”Preferences“选项卡,然后在”Performance“,检查”Caching“一节
在“缓存系统”下拉菜单中选择memcached
此外,您甚至可以使用了XCache(包括中的Prestashop 1.5版),或Prestashop默认的缓存系统,在同一个下拉菜单,它不需要任何服务器端扩展的。

9。 像eAccelerator的或APC那样安装缓存工具OP-CODE

eAccelerator的是一个免费的PHP代码加速器和优化。提高PHP脚本的性能,缓存在其编译的状态,所以编译的开销,将完全解决。此外,它优化了脚本,以加快其执行。 eAccelerator在通常最大限度地减少服务器的负载,提高你的PHP代码1-10倍的速度。

在Prestashop没有使用eAccelerator的具体配置必须做。简单地询问您的主机公司,让eAccelerator的,并确保你的店继续正常工作。

10。调整你的MySQL配置,并检查了您的SQL查询缓存值

请询问您的主机公司关于你的MySQL配置,同时也确认query_cache值。该值必须至少为“512M”(512兆字节)。

其他MySQL的配置值也可能微调,来看看优秀的MySQL性能博客。
附加功能

    安装YSlow的或Google Page Speed 谷歌网页速度
    优化你的代码与XDebug和KCacheGrind

11。使用良好编码的主题

使用编码的Prestashop主题将帮助您的访客的浏览器更好的渲染店铺布局。考虑到使用的Prestashop主题,验证,CSS3和HTML5也许是最好的。在这个网站的Prestashop主题部分选择一个。

希望你今天从我们的经验和我们的想法。更快的商店表示更多的订单,因此更多的钱,这是事实。所以,不辜负您的访客,并经常检查您的网络商店加载速度,保持领先你的竞争对手。

英语原文:http://leethemes.com/blog/how-to-speed-up-a-prestashop-site


使用道具 举报

Rank: 8Rank: 8

发表于 2018-9-1 09:01:40 |显示全部楼层
prestashop每一类页面的seo设置,说一下方法和技巧 (2011-12-12 09:35:12)转载▼
标签: 网店优化        分类: 网站优化
其实,所有的网店系统的seo设置,思路是大同小异的,今天Bruce Lee主要介绍PrestaShop站内优化设置的心得,主要包括prestashop首页seo设置,prestashop栏目优化设置,prestashop产品页面seo设置,prestashop单页seo设置(包括best-saler.php等页面),如果设置了博客,记得做博客的seo设置

针对以上四类常用页面的优化设置,有一些公共的标准:

1.每个有优化词的页面,关键词必须出现在title里面,关键词必须出现在description;

2.每个有优化词的页面,关键词必须在页面的可视部分出现;

3.如果一个优化的关键词在网站内部多个页面出现,最好给这个词加一个链接,链接到这个词优化的页面;

以上三项是prestashop seo设置的公共标准.

下面,对于prestashop每一类页面的seo设置,说一下方法和技巧

prestashop首页seo设置:

首页是一个网站中最重要的页面,首页一般放置本站最重要的词,首页的优化设置可以针对本站做销售的品牌来写,可以设置一些营销类的广告语,或者是品牌介绍之类的信息,保证原创!

保证整站的内页都有首页的关键词链接!

prestashop栏目页面seo设置:

栏目页面是一个网站的产品列表页面,相对于整站而言是非常重要的页面,一方面首页都会有链接直接链接到栏目页面,栏目页面的收录会非常快,第二,栏目页面是多个产品的集合,给客户更多的选择,提升站点转化.

我一般在设置栏目关键词,会把这个品牌比较重要的系列关键词放置在栏目页面,栏目页面的seo设置重点围绕品牌的系列来写,如果网站的栏目比较多,可以写优化设置模板,使用穿插的方式把关键词和栏目名称穿插进去.

prestashop产品页面的seo设置

产品页面是整站当中页面最多的页面类型,大部分长尾词分布在产品页面.

产品页面的seo设置尽量围绕单产品来设置,一般这种外贸seo网店系统产品数量比较多,所以产品页面的seo设置一般不会手工去完成,通过批量的方法去完成,重点也是写seo模板,穿插产品名称,产品页面的长尾词,来完成.

prestashop单页的seo设置

针对这一类页面的seo设置,我一般是根据首页的seo设置修改而来的,需要保证整站页面中,title和description在每个页面上都不一样.

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册