Php 在Magento URL前面加上位置前缀(htaccess/URL重写)
所以我在WordPress安装的后面安装了一个Magento安装;因此:Php 在Magento URL前面加上位置前缀(htaccess/URL重写),php,.htaccess,magento,url-rewriting,url-routing,Php,.htaccess,Magento,Url Rewriting,Url Routing,所以我在WordPress安装的后面安装了一个Magento安装;因此: root.level/是WordPress root.level/shop/是Magento 除目录外,网站的所有内容都通过WordPress处理。Magento只处理目录 该网站将完全本地化,面向英国、欧洲其他地区和美国市场。在WordPress上,我使用qTranslate插件有效地实现了这一点,因此以下所有功能都可以正常工作: root.level/uk/ root.level/eu/ root.level/u
- root.level/是WordPress
- root.level/shop/是Magento
- root.level/uk/
- root.level/eu/
- root.level/us/
- root.level/shop/uk/
- root.level/shop/eu/
- root.level/shop/us/
#shop moves
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^([a-z][a-z])/shop/(.*)[/]{0,1}$ /shop/index.php?___store=$1 [L]
RewriteRule ^([a-z][a-z])/shop[/]{0,1}$ /shop/index.php?___store=$1 [L]
</IfModule>
#店铺搬家
重新启动发动机
重写基/
重写规则^([a-z][a-z])/shop/(.*)[/]{0,1}$/shop/index.php?uuuuuuuuu store=$1[L]
重写规则^([a-z][a-z])/shop[/]{0,1}$/shop/index.php?\uuuuuuuu store=$1[L]
其中root.level/uk/shop/将加载uk magento店面主页,root.level/uk/shop/xyz.html具有所需的行为。问题是store页面上的链接仍然指向root.level/shop/xyz.html。如何让链接反映重写的URL
我尝试进入Magento Admin-->System-->Config,将作用域设置为相关的店面,然后在Web下更改“链接URL”(在安全和不安全两种情况下),这样可以更正该店面上的每个404页(包括主页)上的链接。是否有地方需要编辑Magento的URL读取行为
编辑:
所以这很奇怪。我已经让它在/eu/shop/和/us/shop/上运行,但是/uk/shop/仍然返回404s。我认为这是因为英国设定了违约,但这种改变似乎不会影响事情。有什么想法吗?您可以使用此
.htaccess
使其工作:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
# Redirect old /shop/uk/ to new /uk/shop
RewriteCond %{THE_REQUEST} ^/shop/([a-z]{2})(.*)$ [NC]
RewriteRule ^ %1/shop/%2 [R=302,L]
# Load the right file for new /uk/shop
RewriteRule ^([a-z]{2})/shop/(.*)/?$ /shop/index.php?___store=$1 [L]
RewriteRule ^([a-z]{2})/shop/?$ /shop/index.php?___store=$1 [L]
</IfModule>
重新启动发动机
重写基/
#将旧的/shop/uk/重定向到新的/uk/shop
重写cond%{THE_REQUEST}^/shop/([a-z]{2})(.*$[NC]
重写规则^%1/商店/%2[R=302,L]
#为new/uk/shop加载正确的文件
重写规则^([a-z]{2})/shop/(.*)/?$/shop/index.php?uuuuuuu store=$1[L]
重写规则^([a-z]{2})/shop/?$/shop/index.php?\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
谢谢您的回复!不幸的是,它的结果与上面的完全相同——链接URL设置为默认值,所有商店链接仍然是/shop/uk/;链接URL设置为root.level/uk/shop/I get 404s.OK,这很奇怪/eu/shop/和/us/shop/两者现在都起作用/uk/shop/(默认值)不。。。