草庐IT

jquery - 当浏览器具有以前的网站历史记录时,Magento多商店索引链接会找到404页面

coder 2024-03-01 原文

我有一个Magento网站,有6个不同的商店。5设为POA,1(国内)设为默认购物车设施。根域有自己的php页面(非mage),直接在/subdomain/index.php/引用每个存储。__ store=storename/。前五个设置在/commercial/storename的子域上,最后一个设置为/domestic/storename
我已经使用jquery在每个存储顶部的头部设置了一个手动存储切换器,它引用每个存储地址/子域/index.php/?__ store=storename/直接在子域内。
我遇到的问题是周期性的,并且经常性的,我们遇到404。当用户访问一个商店(例如汽车商店),切换到另一个(例如采矿商店),然后尝试查看前一个商店(汽车商店)的页面时,URL指向正确的页面,但是显示的商店主题是第二家商店。当页面在google和adwords中被索引时,这些404也可以通过直接链接发生。
会话生存期设置为3600,所有存储都已设置为子域。第六个“家庭”商店是一个单独的mage安装,但也是切换器问题的一部分。
任何帮助都将不胜感激。域名是levanta dot com dot au。
干杯。
编辑:在检查系统日志后,我发现以下错误。
2012-08-27t02:34:14+00:00错误(3):注意:未定义索引:httponly in/home/levantan/public_html/www.levanta.com.au/commercial/app/code/core/mage/core/model/session/abstract/varien.php on line 90
2012-08-27t02:34:14+00:00错误(3):注意:未定义的索引:secure in/home/levantan/public_html/www.levanta.com.au/commercial/app/code/core/mage/core/model/session/abstract/varien.php第92行
2012-08-27t02:34:14+00:00错误(3):注意:未定义的索引:domain in/home/levantan/public_html/www.levanta.com.au/commercial/app/code/core/mage/core/model/session/abstract/varien.php,在线94

最佳答案

阅读:
多个网站和商店如何工作
全球网站商店商店视图
见视频:
Video: Creating Multiple Online Storefronts, Part 1
Video: Creating Multiple Online Storefronts, Part 2
Magento的一个高级功能允许在一个安装中管理多个网站和商店,我们有一个惊人的系统来支持这一点:gws-aka“全球,网站,商店”。
全局:指整个安装。
网站:网站是商店的“家长”。网站由一个或多个商店组成。网站可以设置为共享客户数据,或不共享任何数据
商店(或商店视图组):商店是网站的“子级”。产品和类别在商店级别进行管理。为每个商店视图组配置根类别,允许同一网站下的多个商店具有完全不同的目录结构。
商店视图:商店需要一个或多个商店视图才能在前端浏览。每个存储视图的目录结构总是相同的,它只允许在前面显示多个数据。90%的实现可能会使用商店视图来允许客户在两种或两种以上的语言之间切换。
示例场景
假设你想销售家用电器、消费电子产品、DVD和CD,为了这个例子,我们将把目录分成两个商店和三个网站。家电产品线将在自己的网站上出售,其余产品将在另一个网站上出售。为此你买了appliances.com和coolstuff.com。您不希望客户数据和订单数据在两个网站之间共享,因此在它们之间的配置中将关闭数据共享。
在coolstuff.com下,你创建了两个商店-电子和媒体。消费类电子产品将通过电子商店销售,媒体产品将通过媒体商店销售。因为每一行的项目都非常广泛,所以为媒体商店和电子商店创建一个单独的类别结构是有意义的……否则类别树会很大而且很麻烦。创建存储时,只需为每个存储分配不同的根类别。
此外,您还希望以英文和西班牙文两种语言提供您的网站目录。为此,您将为三个商店中的每一个创建英语和西班牙语商店视图。输入目录数据时,您可以在管理中切换存储视图以创建其他产品标题、说明等…
配置
magento的配置在设置存储时使用gws作为一种树。初始安装时,所有配置设置都指向“默认”,即全局安装。可以在特定网站或商店视图中取消选中每个可配置项目旁边的复选框,以指示此项目将特定于此网站或商店视图。例如,您将在两个网站上提供authorize.net作为支付模块,但您只想在coolstuff.com上提供google checkout。在配置中,您可以在商店视图下拉列表中选择coolstuff.com,找到google api设置,然后在google checkout选项卡中取消选中“使用默认值”。对于这个特定的网站,你现在可以启用或禁用谷歌结帐。
配置中的所有模块功能相同。
转到存储视图-创建存储视图后,可以根据需要配置存储视图的布局和视觉设置-下拉列表允许客户在存储视图之间切换。这将使用备用视图重新加载当前页。这可以用于多种语言,但也可以很容易地在多个设计包之间进行a-b测试,以查看一个设计包是否产生更多转换。可能性是无穷的!
以上是这个功能的一个基本概述-学习如何设置它的最好方法是安装magento并在那里开始玩。
我还创建了两个简短的视频,更详细地介绍了配置。享受!
见视频:
Video: Creating Multiple Online Storefronts, Part 1
Video: Creating Multiple Online Storefronts, Part 2

关于jquery - 当浏览器具有以前的网站历史记录时,Magento多商店索引链接会找到404页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12102572/

有关jquery - 当浏览器具有以前的网站历史记录时,Magento多商店索引链接会找到404页面的更多相关文章

  1. ruby - 具有身份验证的私有(private) Ruby Gem 服务器 - 2

    我想安装一个带有一些身份验证的私有(private)Rubygem服务器。我希望能够使用公共(public)Ubuntu服务器托管内部gem。我读到了http://docs.rubygems.org/read/chapter/18.但是那个没有身份验证-如我所见。然后我读到了https://github.com/cwninja/geminabox.但是当我使用基本身份验证(他们在他们的Wiki中有)时,它会提示从我的服务器获取源。所以。如何制作带有身份验证的私有(private)Rubygem服务器?这是不可能的吗?谢谢。编辑:Geminabox问题。我尝试“捆绑”以安装新的gem..

  2. ruby - 在 Ruby 中用键盘诅咒数组浏览 - 2

    我正在尝试在Ruby中制作一个cli应用程序,它接受一个给定的数组,然后将其显示为一个列表,我可以使用箭头键浏览它。我觉得我已经在Ruby中看到一个库已经这样做了,但我记不起它的名字了。我正在尝试对soundcloud2000中的代码进行逆向工程做类似的事情,但他的代码与SoundcloudAPI的使用紧密耦合。我知道cursesgem,我正在考虑更抽象的东西。广告有没有人见过可以做到这一点的库或一些概念证明的Ruby代码可以做到这一点? 最佳答案 我不知道这是否是您正在寻找的,但也许您可以使用我的想法。由于我没有关于您要完成的工作

  3. ruby-on-rails - 浏览 Ruby 源代码 - 2

    我的主要目标是能够完全理解我正在使用的库/gem。我尝试在Github上从头到尾阅读源代码,但这真的很难。我认为更有趣、更温和的踏脚石就是在使用时阅读每个库/gem方法的源代码。例如,我想知道RubyonRails中的redirect_to方法是如何工作的:如何查找redirect_to方法的源代码?我知道在pry中我可以执行类似show-methodmethod的操作,但我如何才能对Rails框架中的方法执行此操作?您对我如何更好地理解Gem及其API有什么建议吗?仅仅阅读源代码似乎真的很难,尤其是对于框架。谢谢! 最佳答案 Ru

  4. jquery - 我的 jquery AJAX POST 请求无需发送 Authenticity Token (Rails) - 2

    rails中是否有任何规定允许站点的所有AJAXPOST请求在没有authenticity_token的情况下通过?我有一个调用Controller方法的JqueryPOSTajax调用,但我没有在其中放置任何真实性代码,但调用成功。我的ApplicationController确实有'request_forgery_protection'并且我已经改变了config.action_controller.consider_all_requests_local在我的environments/development.rb中为false我还搜索了我的代码以确保我没有重载ajaxSend来发送

  5. ruby-on-rails - Rails 3.1 中具有相同形式的多个模型? - 2

    我正在使用Rails3.1并在一个论坛上工作。我有一个名为Topic的模型,每个模型都有许多Post。当用户创建新主题时,他们也应该创建第一个Post。但是,我不确定如何以相同的形式执行此操作。这是我的代码:classTopic:destroyaccepts_nested_attributes_for:postsvalidates_presence_of:titleendclassPost...但这似乎不起作用。有什么想法吗?谢谢! 最佳答案 @Pablo的回答似乎有你需要的一切。但更具体地说...首先改变你View中的这一行对此#

  6. ruby-on-rails - 为什么在安装 Ruby 1.9.3 时出现 404 错误? - 2

    我最近对我的计算机(OS-MacOSX10.6.8)进行了删除,并且我正在重新安装我所有的开发工具。我再次安装了RVM;但是,它不会让我安装Ruby1.9.3。到目前为止我已经尝试过:rvminstall1.9.3rvm安装1.9.3-p194rvm安装1.9.3-p448rvminstall1.9.3--with-gcc=clang所有返回相同的命令行错误:Searchingforbinaryrubies,thismighttakesometime.Nobinaryrubiesavailablefor:osx/10.6/x86_64/ruby-1.9.3-p448.Continuin

  7. ruby - 具有两个参数的 block - 2

    我从用户Hirolau那里找到了这段代码:defsum_to_n?(a,n)a.combination(2).find{|x,y|x+y==n}enda=[1,2,3,4,5]sum_to_n?(a,9)#=>[4,5]sum_to_n?(a,11)#=>nil我如何知道何时可以将两个参数发送到预定义方法(如find)?我不清楚,因为有时它不起作用。这是重新定义的东西吗? 最佳答案 如果您查看Enumerable#find的文档,您会发现它只接受一个block参数。您可以将它发送两次的原因是因为Ruby可以方便地让您根据它的“并行赋

  8. ruby-on-rails - 在 RSpec 中,如何以任意顺序期望具有不同参数的多条消息? - 2

    RSpec似乎按顺序匹配方法接收的消息。我不确定如何使以下代码工作:allow(a).toreceive(:f)expect(a).toreceive(:f).with(2)a.f(1)a.f(2)a.f(3)我问的原因是a.f的一些调用是由我的代码的上层控制的,所以我不能对这些方法调用添加期望。 最佳答案 RSpecspy是测试这种情况的一种方式。要监视一个方法,用allowstub,除了方法名称之外没有任何约束,调用该方法,然后expect确切的方法调用。例如:allow(a).toreceive(:f)a.f(2)a.f(1)

  9. jquery - 如何将 AJAX 变量从 jQuery 传递到他们的 Controller ? - 2

    我有一个电子邮件表格。但是我正在制作一个测试电子邮件表单,用户可以在其中添加一个唯一的电子邮件,并让电子邮件测试将其发送到该特定电子邮件。为了简单起见,我决定让测试电子邮件通过ajax执行,并将整个内容粘贴到另一个电子邮件表单中。我不知道如何将变量从我的HAML发送到我的Controllernew.html.haml-form_tagadmin_email_blast_pathdoSubject%br=text_field_tag'subject',:class=>"mass_email_subject"%brBody%br=text_area_tag'message','',:nam

  10. ruby-on-rails - 具有同名的模块和类 - 2

    我有一个模块stat存在于目录结构中:lib/stat_creator/stat/在lib/stat_creator/stat.rb中,我在lib/stat_creator/stat/目录中有我需要的文件,以及:moduleStatCreatormoduleStatendend当我使用该模块时,我将这些类称为StatCreator::Stat::Foo.new现在我想要一个存在于应用程序中的根Stat类。我在app/models中制作了我的Stat类,并在routes.rb中进行了设置。但是,如果我转到Rails控制台并尝试在应用程序/模型中使用Stat类,例如:Stat.by_use

随机推荐