বিকাশ, পরীক্ষা এবং মুক্তি


10

আপনি কীভাবে আপনার ওয়ার্ডপ্রেস সাইটগুলি লাইভ বিকাশ, পরীক্ষা এবং লাইভ-টু লাইভ স্থাপন করবেন?

এটি সর্বদা আমার একটি ত্রুটিযুক্ত খুঁজে পাওয়া যায়, বিশেষত যেখানে ডেটাবেসগুলি সম্পর্কিত - মূলত এই কারণে যে কোনও পরীক্ষার সাইট স্থাপন করার জন্য পুরো নতুন ডাটাবেস প্রয়োজন যা কখনও কখনও সমস্ত লিঙ্কগুলিতে পরিবর্তিত হয় ব্যতীত একেবারে একই হতে পারে লাইভ সাইটের পরিবর্তে সাইট ইউআরএল পরীক্ষা করে।

একইভাবে কোনও বাগ আপলোড করতে বা নতুন কিছু বিকাশ করার জন্য শেষবারের পরে যে কোনও আপলোড ব্যবহারকারীগণ আপলোড করেছেন তা পরীক্ষার সাইটে অনুলিপি করতে হবে।

অন্যরা কীভাবে তা করে? আপনি কি ঠিক ত্রুটি সহ্য করেন? আপনি চতুর সংস্করণ নিয়ন্ত্রণ সিস্টেম ব্যবহার করেন যা সাহায্য করে?

ধন্যবাদ


আপনি যদি আপনার হোস্ট ফাইল পরিবর্তন করে এমন একটি সিস্টেম ঘোরান , তবে আপনাকে কখনই আপনার টেস্ট ডিবি দিয়ে কৌতুক করতে হবে না। ( ওয়ার্ডপ্রেস.স্ট্যাকেক্সেঞ্জিং.
আলেকজান্ডার বার্ড

উত্তর:


12

কিছুটা ব্যক্তিগত দর্শন আছে যা একটি স্থাপনার কর্মপ্রবাহে যায়। সার্ভার এবং সংস্করণ নিয়ন্ত্রণ, আপনার অপারেটিং সিস্টেম, হোস্টিং, ক্লায়েন্টের অভিজ্ঞতা এবং প্রযুক্তি সংস্কৃতি ইত্যাদির সাথে আপনার অভিজ্ঞতা না জেনে সরাসরি উত্তর দেওয়া সহজ প্রশ্ন নয় ...

  1. এখানে একটি অনুরূপ প্রশ্ন রয়েছে যার অনেক ব্যাখ্যা রয়েছে।
  2. সামগ্রী স্থাপনের জন্য, আপনি ক্রাউড ফেভারিটের র‌্যামপ প্লাগইনটি পরীক্ষা করে দেখতে পারেন ।
  3. মোতায়েন সম্পর্কিত ভাল তথ্য খুঁজে পাওয়ার জন্য ডাব্লুপি হ্যাকার একটি দুর্দান্ত থ্রেড।

ব্যক্তিগতভাবে, আমি নিশ্চিত হয়েছি যে আমার থিমগুলিতে আমি কখনই হার্ড কোড নিরঙ্কুশ ইউআরএল না। ব্লগিনফো () বা কোড সম্পর্কিত সম্পর্কিত URL গুলি ব্যবহার করুন। আমি আমার wp-config.php ফাইলে প্রচুর শর্তাদি ব্যবহার করি। আমার ডাব্লুপি-কনফিগার সম্পাদনাগুলির একটি ভ্যানিলা সংস্করণ এখানে।

switch($_SERVER['SERVER_NAME']){
    case 'dev.yourdomain.com':
        $db_host = '';
        $db_pass = '';
        //define debugging
        break;
    case 'stage.yourdomain.com':
        $db_host = '';
        $db_pass = '';
        break;
    default: //Live
        $db_host = '';
        $db_pass = '';
}
define('DB_PASSWORD', $db_pass);
define('DB_HOST', $db_host);

//You could also set this as a variable above
define('WP_HOME', 'http://'.$_SERVER['SERVER_NAME']));
define('WP_SITEURL', 'http://'.$_SERVER['SERVER_NAME']));

আমি প্রচুর সাইটগুলিতে কাজ করি যা অনুসরণ করে

  • স্থানীয় (ব্যক্তিগত হ্যাকিং :) আমার ল্যাপটপ ওয়েব সার্ভারে)>
  • dev (ক্লায়েন্ট সার্ভারে পরীক্ষা করা)>
  • পর্যায় (কিউএর জন্য স্থিতিশীল উত্স - সামগ্রী সম্পাদনা)>
  • উত্পাদন (লাইভ সাইট)

সবশেষে, আমি আপনাকে পরামর্শ দিচ্ছি যে আপনি জিআইটি বা এসভিএন এর মতো মোতায়েনে সহায়তা করার জন্য একটি সংস্করণ সরঞ্জাম ব্যবহার করুন। এটি প্রক্রিয়াটি উল্লেখযোগ্যভাবে সহজ করে এবং পরিবেশের মধ্যে উত্স অখণ্ডতা বজায় রাখে। আপনার স্থানীয় প্রতিশ্রুতিবদ্ধ সহজেই মঞ্চ এবং উত্পাদন কমান্ড লাইন মাধ্যমে আপডেট করা হয়। প্রকল্পে বিকাশকারীরা যদি তাদের মধ্যে কাজ করে থাকে তবে আপনি এবং ক্লায়েন্ট শুরু থেকে কী সংস্করণটি ব্যবহার করছেন তা নির্ধারণ করার জন্য এটি আবিষ্কারের সময় সেরা। আমি ব্যক্তিগতভাবে আমার সংস্করণ নিয়ন্ত্রণের জন্য জিআইটি ব্যবহার করি। যাইহোক, যদি কোনও ক্লায়েন্ট এসভিএন ব্যবহার করে তবে আমি আমার লোকালটিতে দুটির একটি মিশ্রণ করি তাই আমি তাদের রেপো প্রতিশ্রুতিবদ্ধ করার সময় নিজের জন্য একটি রেপো বজায় রাখি।

আমাদের খুব কমই একটি পরিবেশ থেকে অন্য পরিবেশে স্থানান্তরিত সমস্যা রয়েছে। এম্বেড এমডি ইত্যাদির জন্য ইউআরএল পরিবর্তন করতে আমরা ডিবিতে সন্ধান / প্রতিস্থাপন করি ...


এটি খুব দরকারী! :) আপনাকে অনেক ধন্যবাদ. তাই প্রতিবার আপনি যখন আলাদা আলাদা সার্ভারে স্থাপন করেন তখন আপনি কি লাইভ সাইট থেকে ডাটাবেসটিকে নকল করবেন? আপনি বলছেন যে আপনি কিউএ এবং সামগ্রী সম্পাদনার জন্য একটি স্টেজিং সার্ভারে (steps.domain.com) স্থাপন করেন। আপনি যখন লাইভ সাইটে স্টেজ সার্ভার চালাচ্ছেন তখন ডেটাবেস পরিবর্তন হলে কী হবে? অর্থাত্ আপনি বা আপনার ক্লায়েন্টটি মঞ্চে লগইন করে কিছু সামগ্রী আপডেট করে তবে একই সময়ে কোনও অবদানকারী লাইভ সাইটে একটি নতুন নিবন্ধ পোস্ট করেন? আপনি কি লাইভ সাইটে আবার সামগ্রীতে সম্পাদনাগুলি প্রভাবিত করেছেন? আপনি কীভাবে ডাটাবেস কাঠামোর পরিবর্তনগুলি মোকাবেলা করবেন?
থমাস ক্লেসন

সব প্রশ্নের জন্য দুঃখিত! : পি আমি আপনার সময় এবং সাহায্যের জন্য খুব কৃতজ্ঞ।
থমাস ক্লেসন

নতুন বৈশিষ্ট্য সেটটিতে আপনি প্রোড> মঞ্চ থেকে টানতে পারেন। তারপরে নতুন বৈশিষ্ট্যটির জন্য সামগ্রী যুক্ত করুন, পিছনে মঞ্চ> টিপুন push সেখান থেকে মঞ্চটি প্রোডের একটি উচ্চ বিশ্বস্ততার অনুলিপি এবং আপনি মঞ্চ> দেব টানতে পারেন। এটি প্রায়শই নয় যে আমরা ডিবিটিকে মঞ্চ থেকে পিছনে টানি। কোনও বৈশিষ্ট্য ডিবি আর্কিটেকচার পরিবর্তন না করে ডিবির সাথে বেশিরভাগ এক্সচেঞ্জ স্টেজ থেকে প্রোডে ঘটে।
ব্রায়ান ফেগটার

আপনি যদি বিষয়বস্তু মোতায়েনের জন্য মঞ্চটি ব্যবহার করতে চান এবং কখনই প্রোডগুলিকে স্পর্শ করেন না, আপনি আমার পোস্ট করা র‌্যাম্প প্লাগইনটি পরীক্ষা করে দেখতে পারেন।
ব্রায়ান ফেগটার

উপরের সব কিছু +1 সহ, কিছু জ্বালাময় প্লাগইনগুলি সিরিয়ালযুক্ত অ্যারেতে ইউআরএল সংরক্ষণ করার জন্য জোর দেয়, যা এক এনভির ডিবি থেকে অন্যটিতে স্থানান্তরিত জিনিসগুলিকে গোলমাল করতে পারে। সমস্যাটি হ'ল সিরিয়ালযুক্ত অ্যারে স্ট্রিং দৈর্ঘ্য সংরক্ষণ করে এবং দৈর্ঘ্য পরিবর্তিত হলে বোর্ন হয়। সুতরাং, আমি যদি সম্ভব হয় তবে এনভির ডোমেনের নামগুলি একই রাখার পরামর্শ দিই, যেমন, dev.example.com, tst.example.com, www.example.com ইত্যাদি
ওয়েবওয়ার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.