আমি ভাগ করে নেওয়া কার্ট সহ বহু মাল্টি স্টোর সেটআপ করার চেষ্টা করছি। তবে ব্যবহারকারী লগইন কখনও কখনও কাজ করে না।
Store Switcher
কাজ করে জরিমানা, কিন্তু ফ্রন্টএন্ড User Login
2nd এবং 3rd উপর Store
আমাকে ক্লিক করুন প্রয়োজন Sign In
লগ-ইন বাটন দুইবার।
এই সেটআপগুলির সাথে আমার মাল্টি স্টোর রয়েছে:
একাধিক ডোমেন (ভার্চুয়াল হোস্ট)
আমি একটি ব্যবহার করছি Website
। সাইটটিতে তিনটি থাকবে Stores
। ডোমেন নামগুলি একটি সাধারণ বেস ডোমেন ভাগ করে নেবে। অতিরিক্ত স্টোর সাবডোমেন ব্যবহার করবে ।
আমি magento2.com কে ডিফল্ট বেস ডোমেন হিসাবে তৈরি করেছি ।
আমি 2 য় স্টোর হিসাবে store2.magento2.com তৈরি করেছি ।
আমি 3 য় স্টোর হিসাবে store3.magento2.com তৈরি করেছি ।
রুট বিভাগ এবং পরীক্ষা পণ্য
আমি Store2 রুট বিভাগ এবং Store3 রুট বিভাগ তৈরি করেছি । আমি প্রতিটি রুট বিভাগের অধীনে উপ বিভাগগুলি তৈরি করেছি।
আমি প্রতিটি উপ বিভাগে একটি পরীক্ষার পণ্য যুক্ত করেছি।
স্টোর এবং ভিউ
আমি মূল ওয়েবসাইট স্টোর এবং ডিফল্ট স্টোর ভিউতে কোনও পরিবর্তন করিনি ।
আমার তৈরি Store2 এবং দোকান দেখুন 2 2nd দোকানের জন্য।
আমি 3 য় স্টোরের জন্য স্টোর 3 এবং স্টোর ভিউ 3 তৈরি করেছি ।
জন্য Store2 , আমি সেট Store2 যেমন Name
এবং নির্বাচিত Store2 রুট শ্রেণী হিসাবে Root Category
।
জন্য দোকান দেখুন 2 , আমি নির্বাচিত Store2 যেমন Store
ব্যবহার স্টোর দেখুন 2 যেমন Name
, এবং প্রবেশ store2 যেমন Store Code
।
3 য় জন্য Store
, আমি সেট Store3 যেমন Name
এবং নির্বাচিত Store3 রুট শ্রেণী হিসাবে Root Category
।
জন্য দোকান দেখুন 3 , আমি নির্বাচিত Store3 যেমন Store
ব্যবহার স্টোর দেখুন 3 যেমন Name
, এবং প্রবেশ store3 যেমন Store Code
।
ইউআরএল এবং কুকি সেটিংস
Configuration
এখন পর্দা শো অধীনে 5 পছন্দ Store View
ড্রপ-ডাউন:
Default Config
Main Website
Default Store View
- স্টোর ভিউ 2
- স্টোর ভিউ 3
আমি URL এবং কুকি সেটিংস পরিবর্তন Default Store View
, দোকান দেখুন 2 , এবং দোকান দেখুন 3 ।
আমি URL বা কুকি সেটিংস পরিবর্তন না করে Default Config
এবং Main Website
।
জন্য Default Store View
, আমি পরিবর্তন Cookie Path
।
জন্য দোকান দেখুন 2 , আমি পরিবর্তিত Base URL
এবং Cookie Path
।
জন্য দোকান দেখুন 3 , আমি পরিবর্তিত Base URL
এবং Cookie Path
।
অ্যাকাউন্ট শেয়ারিং
একাধিক স্টোরের মধ্যে ব্যবহারকারীর অ্যাকাউন্ট এবং শপিং কার্ট ভাগ করে নেওয়ার জন্য, আমি Share Customer Accounts
"প্রতি ওয়েবসাইট" থেকে গ্লোবাল আন্ডারে বদলেছি Default Config
।
.htaccess পরিবর্তন
আমি .htaccess
প্রকল্পের রুট ডিরেক্টরিতে ফাইলের শীর্ষে এই লাইনগুলি যুক্ত করেছি ।
#Multi store setting
SetEnvIf Host magento2.com MAGE_RUN_CODE=default
SetEnvIf Host magento2.com MAGE_RUN_TYPE=store
SetEnvIf Host ^magento2.com MAGE_RUN_CODE=default
SetEnvIf Host ^magento2.com MAGE_RUN_TYPE=store
SetEnvIf Host store2.magento2.com MAGE_RUN_CODE=store2
SetEnvIf Host store2.magento2.com MAGE_RUN_TYPE=store
SetEnvIf Host ^store2.magento2.com MAGE_RUN_CODE=store2
SetEnvIf Host ^store2.magento2.com MAGE_RUN_TYPE=store
SetEnvIf Host store3.magento2.com MAGE_RUN_CODE=store3
SetEnvIf Host store3.magento2.com MAGE_RUN_TYPE=store
SetEnvIf Host ^store3.magento2.com MAGE_RUN_CODE=store3
SetEnvIf Host ^store3.magento2.com MAGE_RUN_TYPE=store
index.php পরিবর্তন
ব্যবহার Store Switcher
, কখনও কখনও ডিফল্টে store2 / 3 থেকে সুইচ করার জন্য দুইবার ক্লিক করা প্রয়োজন। এটি ঠিক করতে, আমাকে $_COOKIE['store']
index.php এ মানটি পুনরায় সেট করতে হয়েছিল:
<?php
/**
* Application entry point
*
* Example - run a particular store or website:
* --------------------------------------------
* require __DIR__ . '/app/bootstrap.php';
* $params = $_SERVER;
* $params[\Magento\Store\Model\StoreManager::PARAM_RUN_CODE] = 'website2';
* $params[\Magento\Store\Model\StoreManager::PARAM_RUN_TYPE] = 'website';
* $bootstrap = \Magento\Framework\App\Bootstrap::create(BP, $params);
* \/** @var \Magento\Framework\App\Http $app *\/
* $app = $bootstrap->createApplication('Magento\Framework\App\Http');
* $bootstrap->run($app);
* --------------------------------------------
*
* Copyright © 2016 Magento. All rights reserved.
* See COPYING.txt for license details.
*/
try {
require __DIR__ . '/app/bootstrap.php';
} catch (\Exception $e) {
echo <<<HTML
<div style="font:12px/1.35em arial, helvetica, sans-serif;">
<div style="margin:0 0 25px 0; border-bottom:1px solid #ccc;">
<h3 style="margin:0;font-size:1.7em;font-weight:normal;text-transform:none;text-align:left;color:#2f2f2f;">
Autoload error</h3>
</div>
<p>{$e->getMessage()}</p>
</div>
HTML;
exit(1);
}
// Fix store switcher bug on switching to the default store
if ( isset($_SERVER['MAGE_RUN_TYPE']) == 'store' && isset($_SERVER['MAGE_RUN_CODE']) ) {
if ( !empty($_SERVER['MAGE_RUN_CODE']) ) {
$_COOKIE['store'] = $_SERVER['MAGE_RUN_CODE'];
}
}
$bootstrap = \Magento\Framework\App\Bootstrap::create(BP, $_SERVER);
/** @var \Magento\Framework\App\Http $app */
$app = $bootstrap->createApplication('Magento\Framework\App\Http');
$bootstrap->run($app);
ব্যবহারকারী লগইন কখনও কখনও দুবার ক্লিক করা প্রয়োজন
উপরের সেটআপের সাথে, Store Switcher
ভাল কাজ করছে। Cart
লগ-ইন এবং লগ-ইন না করা উভয় ব্যবহারকারীর জন্য কেনাকাটাটি 3 টি স্টোরের মধ্যে ভাগ করা আছে।
যাইহোক, উপর Store2 এবং Store3 , ফ্রন্টএন্ড user login
মাঝে মাঝে ফিরে একই লগইন পৃষ্ঠায় রিডাইরেক্ট। আমি যদি Sign In
পুনঃনির্দেশিত লগইন পৃষ্ঠার বোতামটি টিপতে (দ্বিতীয় বার এই বোতামটি ক্লিক করার জন্য), এটি আমাকে লগইন করতে দেয়।
এই সমস্যাটি সমাধান করার কোনও উপায় আছে কি?
আপডেট: অক্ষম করা হচ্ছে Cache
আমি কমান্ড লাইন থেকে ক্যাচিং অক্ষম করেছি:
php bin/magento cache:disable
প্রতিবন্ধী ক্যাশে সঙ্গে, user login
উপর Store2 এবং Store3 আরো অনেক কিছু স্থিতিশীল হয়ে ওঠে। এটি এখনও 10 টির মধ্যে 1 টি লগইন পৃষ্ঠাতে পুনঃনির্দেশিত হয়েছে, তবে এই পরিবর্তনটি লগইনকে আরও ভালভাবে কাজ করার জন্য তৈরি করেছে।
তবে পুরো সাইটটি ধীর হয়ে গেল !!!
user login
মাল্টি Store
সেটআপে সঠিকভাবে সঞ্চালন করতে ক্যাশে কনফিগার করার কোনও উপায় আছে কি ?