Articles of magento

我应该放在我的大机器上? Magento数据库的Magentonetworking服务器?

我即将推出一个新的Magento网站,我对这个问题的反馈感兴趣? 你认为Magento PHP代码较慢或者Magento MySQL操作较慢? 我应该分成哪两个服务器的大盒子?

Magento CE PCI合规性

我们正在尝试使用Trustwave的漏洞扫描程序来实现PCI合规性。 Magento版本是1.5.1.0,在CentOS 5上运行。 根据“PCI合规性报告”,我们已经回到最后一个问题。 我们有争议的问题,但他们已经下降。 以下是详细信息: 问题: 在该主机上运行的PHP版本在ext / sockets / sockets.c中的socket_connect函数中容易出现基于堆栈的缓冲区溢出,这可能允许上下文相关的攻击者通过UNIX套接字的长path名执行任意代码。 此漏洞已经在即将发布的PHP版本中解决,但是,可能存在对此问题的回溯修复。 应联系您的供应商以确定当前是否存在解决scheme。 或者,从所有PHP应用程序中删除socket_connect函数也将缓解这个问题。 我的争议 (和所有其他问题一样,我提交了我们正在使用的精确版本的列表)。 Apache:httpd-2.2.3-45.el5.centos.1 PHP:php-common-5.3.6-3.el5.art php-5.3.6-3.el5.art php-mbstring-5.3.6-3.el5.art php-pear-1.7.2-2.el5 。艺术 SSL:mod_ssl-2.2.3-45.el5.centos.1 SSH:openssh-4.3p2-72.el5_6.3 openssh-server-4.3p2-72.el5_6.3 降级的原因 我们已经根据所提供的信息否认了这个争议,表明php-5.3.6-3.el5.art正在这个系统上运行。 显示该版本无法findphp-5.3.6-3.el5.art的文档。 请重新解答此漏洞,并提供此版本已成功解决此问题的详细信息或证据(例如,通过提供供应商提供的链接以及显示此版本解决CVE-2011-1938的解释/声明)。 CVE链接http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2011-1938 我们想知道是否有人用Magneto 1.5.1.0和PCI漏洞testing仪解决了这个问题? 我们的服务提供商(虚拟主机)给予我们这样的回应: Magento相当广泛地使用socket_connect。 正如我在之前的邮件中所说的那样,我相信红帽已经把修补这个特定bug的紧迫性放在了优先位置,而且还没有解决这个问题。 https://www.redhat.com/security/data/cve/CVE-2011-1938.html “红帽安全响应小组认为这个问题的安全影响很小,未来的更新可能会解决这个问题。” 该修复程序还没有在primefaces公司版本的软件包中实现。 我想下一步可​​能是考虑从primefaces源包中编译PHP并手动修复这个错误,但是如果没有得到公认的安全机构的支持,这可能不足以满足审计人员的需求。 我们希望以前有人遇到过这个问题,并且知道一个解决方法。

通过PHP的getimage大小环回连接崩溃服务器(Magento的CMS)

我们能够find正在运行Magento的NGINX服务器崩溃的问题,直到以下几点: 背景信息:Magento后端有一个所见即所得的编辑器CMSfunction。 这个编辑器通过magento(cms / directive)中的控制器加载一些图片。 当我们将NGINX error_log级别设置为info时,我们得到以下行(为了更好的可读性插入换行符): 2012/10/22 18:05:40 [info] 14105#0: *1 client closed prematurely connection, so upstream connection is closed too while sending request to upstream, client: XXXXXXXXX, server: test.local, request: "GET index.php/admin/cms_wysiwyg/directive/___directive/BASEENCODEDIMAGEURL,,/ HTTP/1.1", upstream: "fastcgi://127.0.0.1:9024", host: "test.local" 在debugging器中检查代码时,以下调用永远不会返回(在'Varien_Image_Adapter_Abstract :: getMimeType()` # $this->_fileName is http://test.local/skin/adminhtml/base/default/images/demo-image-not-existing.gif` # $_SERVER['REQUEST_URI'] = http://test.local/admin/cms_wysiwyg/directive/___directive/BASEENCODEDIMAGEURL list($this->_imageSrcWidth, $this->_imageSrcHeight, $this->_fileType, ) = […]

在多服务器环境中以高可用性/高性能方式存储会话的最佳方式

我有一个具有抽象会话存储层的应用程序(Magento)。 我试图想象存储会话的最佳方式。 mysql数据库? 我想一个非常大的innodb_buffer_pool_size的专用数据库,所以它基本上像磁盘备份的RAMcaching。 我正在考虑为会话分配一个单独的数据库,并把其他数据库的东西放在一个单独的数据库/数据库服务器上。 内存caching? 这是伟大的,但我有点担心如果服务器崩溃会发生什么? 我会失去与崩溃的会话分区,因为从我所了解的Memcache不distrubuted。 我可以使它distrubuted? (我刚才告诉我可以使用pecl memcache module> = 3 tmpfs内存文件存储? 这工作,但我将不得不同步写入会话与所有其他服务器使用rsync或东西,检测到在该文件夹中发生写入。 我确信这个东西已经存在了。 其他解决scheme,我没有想到? 会喜欢想法。 谢谢!

不能gzip一些JS和CSS文件

我正在优化一个magento商店,并且一些JS和CSS(在MEDIA文件夹中编译和缩小)没有被服务gziped,因为他们应该。 所有页面都是gziped(例如这个HTML页面 ),但是一些内容不是(例如这个JS文件 )。 通过gtmetrix.com和whatsmyip的HTTP压缩testing进行testing 我在.htaccess有这个configuration: <IfModule mod_deflate.c> # Insert filter on all content SetOutputFilter DEFLATE # Insert filter on selected content types only #AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript # Netscape 4.x has some problems… BrowserMatch ^Mozilla/4 gzip-only-text/html # Netscape 4.06-4.08 have some more problems BrowserMatch ^Mozilla/4\.0[678] no-gzip # MSIE masquerades as Netscape, […]

Redis服务器高CPUdebugging策略

最近,我们注意到由redis引起的生产环境的CPU峰值,这可以在下面看到: 为了解决这个问题,我每天大概两次重新启动redis服务器(这显然很不理想,我想找出根本原因。 以下是我到目前为止所看到的一些事情: 1)查看redis日志文件中的任何exception。 以下似乎是可疑的: 2)研究了nginx的访问日志,看看我们是否遇到exception高的stream量。 答案是不。 3)New Relic透露,这个问题从16日(大约一个月前)的11月21日开始,但是在那个时候没有发布代码。 以下是关于我们设置的一些细节: Redis服务器: Redis server v=2.8.17 sha=00000000:0 malloc=jemalloc-3.6.0 bits=64 build=64a9cf396cbcc4c7 PHP: 5.3.27与fpm Redisconfiguration: daemonize yes pidfile /var/run/redis/redis.pid port 6379 timeout 0 tcp-keepalive 0 loglevel notice logfile /var/log/redis/redis.log syslog-enabled yes databases 16 save 900 1 save 300 10 save 60 10000 stop-writes-on-bgsave-error no rdbcompression yes rdbchecksum yes dbfilename […]

IP地址redirect到www.IP地址

我有一个运行Bitnami Magento堆栈的Google云计算实例。 出于某种奇怪的原因,如果我尝试通过IP地址浏览到该站点,它会使用www前缀IP地址。 所以失败了。 网站的域名是好的。 这是相关的,因为只能从127.0.0.1(创buildSSH隧道之后)访问phpmyadmin。 问题是这是被redirect到www.127.0.0.1并失败。 我无法find解决此问题的apache2 conf文件中的任何内容。 Magento本身安装正确,工作正常。 发现一个stream氓软件包已经被上传之后,这个问题就开始了(这已经被清除了)。 任何伟大的想法收到,这是让我疯狂。

仅清除单个会话中的caching资产

目前,我设法configurationvarnish来caching来自1个用户的项目,但是当第二个用户进入varnish时从Apache获取另一个资源。 如何将静态资产caching在可从多个用户访问的magento(css,js,image pdf等)中? 在vcl_recv上,我configuration了: if (req.url ~ "\.(png|gif|jpg|swf|css|js)$") { unset req.http.Https; unset req.http.Cookie; return (lookup); } 在vcl_fetch上: if (beresp.status == 200 || beresp.status == 301 || beresp.status == 404) { if (beresp.http.Content-Type ~ "text/html" || beresp.http.Content-Type ~ "text/xml") { # do something } else { unset beresp.http.expires; unset beresp.http.set-cookie; set beresp.ttl = 300h; } 我怀疑这有什么要做的vcl_hash存储caching与某种客户端的指纹。 […]

mysql每天在同一时间变得没有响应

我的服务器每天都在同一时间停机。 我发现这个问题是由于MySQL。 我试过显示进程列表; 并发现数据库正在进入睡眠模式。 我看到log_url表中有如此多的插入,如下所示 mysql> show processlist; +——-+—————+———–+——————+———+——+————–+——————————————————————————————————+ | Id | User | Host | db | Command | Time | State | Info | +——-+—————+———–+——————+———+——+————–+——————————————————————————————————+ | 72962 | sonicsense_db | localhost | sonicsense_db | Query | 1 | Sending data | SELECT `log_url`.* FROM `log_url` LIMIT 2381 OFFSET 2992917 | | 74069 | […]

针对小型VPS优化MySQL

我试图优化我的MySQLconfiguration一个verrry小VPS。 VPS还运行NGINX / PHP-FPM和Magento; 所有的内存都有250MB的限制。 这是MySQL调谐器的输出… ——– General Statistics ————————————————– [–] Skipped version check for MySQLTuner script [OK] Currently running supported MySQL version 5.1.41-3ubuntu12.8 [OK] Operating on 64-bit architecture ——– Storage Engine Statistics ——————————————- [–] Status: -Archive -BDB -Federated +InnoDB -ISAM -NDBCluster [–] Data in MyISAM tables: 1M (Tables: 14) [–] Data in InnoDB tables: […]