3つの異なる店舗を持つeコマースサイトでmod_geoipに問題があります。私たちはメインストアをroot/storeに持っていますが、root/ukstoreとroot/austoreにもストアを持っています。メインのルート/ストアには、すべてのcss、イメージ、およびjavascriptを含む/ skin、/ media、および/ jsディレクトリが含まれています。この現在の設定では、URLは完全にベースから外しますが、英国のユーザーがroot/store/category/product /に行くと、root/ukstore/category/product /にリダイレクトされます。 。htaccess mod_GeoIPでルールを書き直す
2つの問題が修正されました。
お客様がチェックアウトやアカウントのような安全なページにアクセスするたびに、cssとjavascriptのURLがroot/ukstore/skinまたはroot/ukstore/jsに書き換えられています。これらのURLのSSLに関して、私が見逃していることはありますか?
第2に、南アフリカのユーザーが店舗にアクセスすると、それらはイギリスの店舗に書き換えられ、すべてのcss、js画像は店舗/スキンに完全にリンクされますが、イギリスのユーザーがstore、css、js、およびimagesの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 URLは先頭のスラッシュ、つまり '/ store/skin/my.css'で始まっていますか、それとも' skin/my.css'ですか? –
これはmagentoの設定なので、実際には/store/skin/frontend/default/theme/css/my.cssです。 CSSの中にはURL(../ images/bg-main3.jpg) – coloradohiker
CSSに先行するスラッシュがある場合、最初のルールはそれが書き換えられないようにします。あなたが 'root/ukstore/skinに書き直そうとしているときに' '/ ukstore/skin'へのリダイレクトを見ているのか、それともUkstoreの.htmlのようなのでしょうか? –