我在使用mod_geoip时遇到了一些有关3个不同商店的电子商务网站的问题。我们在root/store有我们的主要商店,但在root/ukstore和root/austore也有商店。主根/存储包含/ skin,/ media和/ js目录,其中包含所有css,图像和javascript。有了这个当前的设置,网站完美地换出了基地,但保留了URL的其余部分,所以如果来自英国的用户进入root/store/category/product /,他们将被重定向到root/ukstore/category/product/。htaccess使用mod_GeoIP重写规则
2件事情现在是问题。
每当客户访问结账或帐户等安全页面时,css和javascript的URL将被重写为root/ukstore/skin或root/ukstore/js。在这些网址的SSL方面我缺少什么?其次,如果来自南非的用户访问商店,则他们被重写到英国商店,并且所有CSS,js,图像完全链接回商店/皮肤,但是如果来自英国的用户访问然后存储css,js和图像的URL尝试被重写为root/ukstore/skin
以下是root/store中我的htaccess文件中的代码。每家商店也有他们自己的htaccess文件,但没有太多内容。
<IfModule mod_geoip.c>
GeoIPEnable On
Options +FollowSymLinks
RewriteEngine on
#skip processing directories
RewriteRule ^store/skin/ - [L,NC]
RewriteRule ^store/media/ - [L,NC]
RewriteRule ^store/js/ - [L,NC]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^(AQ|AU|MY|BV|BN|BN|MM|KH|CN|CX|CC|CK|GQ|FJ|PF|GU|GW|HM|HK|ID|KI|KR|KP|KR|LA|MO|MY|MH|FM|MM|NR|NC|PG|NZ|NU|NF|PG|CN|PH|PN|WS|SG|SB|KR|LK|BN|TW|TW|AU|TH|TL|TK|TO|TV|VU|VN|VN|WF)$
RewriteCond %{REQUEST_URI} ^/store(/.*)$ [NC]
RewriteRule^/austore%1 [L,R]
#UK Store Rewrites
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^(AF|AX|AL|DZ|AD|AO|AM|AT|AZ|BH|BD|IS|BY|BE|BJ|BT|BA|BW|IO|BG|BF|BI|GB|CM|ES|CV|CF|TD|GB|KM|CG|CD|CG|CD|CI|HR|CY|CZ|CZ|BJ|DK|DJ|EG|ER|EE|ET|FO|FI|FR|TF|GA|GM|GE|DE|GH|GI|GD|GR|GL|GN|VA|HU|IS|IN|IR|IR|IQ|IE|IL|IT|CI|JO|KZ|KE|KW|KG|LV|LB|LS|LR|LY|LY|LI|LT|LU|MK|MG|MW|MV|ML|MT|MR|MU|MC|MC|MN|ME|MA|MZ|NA|NP|NL|NE|NG|IE|NO|OM|PK|PS|PS|CG|PL|PT|QA|CI|MK|ZA|CD|RE|RO|RU|RW|SH|SM|ST|SA|SN|RS|SC|SL|SK|SI|SO|SO|ZA|ES|SD|SJ|SZ|SE|CH|SY|SY|TJ|TZ|TN|TR|TM|AE|UG|UA|AE|GB|BF|UZ|VA|GB|EH|YE|ZM|ZW)$
RewriteCond %{REQUEST_URI} ^/store(/.*)$ [NC]
RewriteRule^/ukstore%1 [L,R]
</IfModule>
任何帮助将不胜感激!
你的css/image网址是否以'/ store/skin/my.css'开头,或者它们是'skin/my.css'? – 2012-02-02 17:04:16
这是一个magento设置,因此它们实际上是/store/skin/frontend/default/theme/css/my.css。但在CSS中,它们是url(../ images/bg-main3.jpg) – coloradohiker 2012-02-02 17:22:46
鉴于CSS有一个前导斜杠,第一条规则将防止它被重写。当你说'尝试重写到root/ukstore/skin'时,你是否看到了重定向到'/ ukstore/skin'或者这是否在Ukstore的.html文件中? – 2012-02-02 17:49:10