انتقال مجنتو از لوکال هاست به هاست و برعکس

سیستم فروشگاه ساز مجنتو

( این آموزش برای مجنتو ۱.۹.x نوشته شده است هرچند به احتمال خیلی زیاد برای سایر نسخه ها نیز کاربرد دارد. )

چند ماهی است به خاطر انجام پروژه ای بزرگ با سیستم مجنتو کار میکنم و طرح فرانت اندی که برای فروشگاهی پیاده سازی کرده بودیم را به قالب مجنتو تبدیل کردیم و با چالش ها و موارد زیادی از این سیستم سر وکار داشتیم که خوشبختانه یکی پس از دیگری حل می شدند.

بعد از آپلود تعدادی از محصولات باید دیباگ های جزئی روی پروژه انجام میشد و برای اینکار لازم بود همان نسخه آنلاین را روی لوکال داشته باشم تا بتوانم تغییرات مورد نظر را اعمال کنیم.

نحوه انتقال مجنتو به لوکال هاست و برعکس ساده تر از چیزی است که فکرش را بکنید 🙂

برای انتقال مجنتو از هاست به لوکال قبل از هر چیزی تمام فایلهای خود را در مسیری که نصب کردید زیپ و سپس دانلود نمائید و در مسیری که میخواهید ( که معمولا Xampp است ) نصب کنید و وفولدر آن را به نام مورد نظر خود ذخیره نمایید. ( من نام فولدر را shop قرار می دهم)

ادامه مراحل را به صورت زیر انجام می دهیم.

گام اول : یک نسخه از دیتابیس را Export کنید.

گام دوم : روی لوکال هاست وارد phpmyadmin شوید و دیتابیس جدیدی با نام دلخواه بسازید.

گام سوم : نسخه دیتابیس دانلود شده از هاست را ایمپورت کنید و سپس وارد قسمت Structure دیتابیس شوید و جدول core_config_data را پیدا کنید و روی آن کلیک کنید. ( در صورتیکه پیشوندی به نام جداول دیتابیس اضافه کردید نام پیشوند به نام جداول نیز اضافه میشود : prefix_core_config_data )

structure phpmyadmin database

core config data in magento

گام چهارم : عبارت base_url را اگر در صفحه جستجو کنید دو تا سطر پیدا میکنید که آدرس وب سایت در آن درجشده است، این دو آدرس را به آدرس لوکال هاست خود تغییر دهید. ( من از دامنه مجازی استفاده میکنم و آدرس لوکال هاست من shop.dev است. )

base-url-magento

گام پنجم : وارد مسیر app < etc شوید و فایل local.xml را ویرایش نمائید. (username , password , dbname)

در صورتیکه مایل بودید مسیر ادمین را هم میتوانید تغییر دهید.

magento - local-xml

گام ششم: وارد فولدر فروشگاه شوید که در لوکال هاست مجنتو را در آن نصب کردید و سپس وارد وفولدر کش شوید  ( shop > var  > cache )  و تمام فولدرهای داخل آن را حذف نمایید، هم اکنون باید با وارد کردن آدرس لوکال فروشگاه شما نمایش داده شود.

var folder cache magento

هم اکنون اگر آدرس وبسایت را روی لوکال یا سایت باز کنید، اگر با خطای زیر مواجه شدید، باید دسترسی به فولدرهای var , media  رو بررسی کنید که روی ۷۷۷ باشند.

magento permission folder var and media

دوره آموزش مجنتو

شاد و موفق باشید.

دیباگ وب سایت روی گوشی موبایل

اگر یک فرانت اند دولوپر حرفه ای باشید، معمولا اولین اولویت یک طراحی خوب برای شما در نظر گرفتن حالت ریسپانسیو بودن آن پروژه ست که روی انواع گوشی های موبایل، تبلت ها و … قابلیت هماهنگی داشته باشه و صرف نظر از اینکه کاربر با چه دیوایسی وارد وب سایت میشه وبسایت قابل استفاده باشه.

چند لینک مفید :

در مورد مفاهیم واکنش گرا بودن وب سایت و اصول آن قبلا مقالاتی را در این زمینه نوشتم که می توانید آنها را مطالعه نمائید :

توصیه هایی برای ایجاد وب سایت های بهینه شده برای گوشی های هوشمند

طراحی سایت واکنش گرا : ۶ نکته برای ارتقای عملکرد

اصول نویگیشن واکنش‌گرا در وب سایت های پیچیده

در این مقاله قصد دارم ابزاری را معرفی کنم که برای خود من بسیار جذاب بود و مشکلات زیادی را برای من حل کرد.

البته لازم است تاکید کنم که این ابزار برای دیباگ نهایی که وب سایت شما روی هاسته و به صورت آنلاین قابل مشاهده است کاربرد داره، در غیر اینصورت من خودم شخصا با Inspector گوگل کروم همه حالتهای واکنش گرایی ( responsive ) وب سایت را انجام میدم.

Google Chrome Inspector Element

دیباگ وبسایت به صورت آنلاین با مرورگر سافاری :

در صورتیکه گوشی آیفون داشته باشید، در قسمت تنظیمات مرورگر سافاری امکانی برای دولوپرها وجود داره به نام Web Inspector که در قسمت Advanced میتوانید آن را فعال نمائید.

پس از فعال کردن آن روی مرورگر لپ تاپ و تنظیمات گوشی موبایلتون، با کابل گوشی خود را به لپ تاپ وصل کنید، در قسمت زیرمنوی تب Develop نام گوشی موبایل شما نمایش داده میشود وقتی ماوس را روی آن قراردهید وبسایتی که در حال حاضر روی گوشی شما باز است را نشان می دهد که با کلیک روی آن ، Inspector باز میشه و با تغییر روی آن میتوانید کلیه قسمت ها را دیباگ کنید و مستقیم روی گوشی شما هم نمایش داده میشه که کمک فوق العاده ای به دولوپرها میکنه.

بعد از وصل کردن گوشی موبایل به لپ تاپ، وب سایتهایی که روی گوشی موبایل باز هستند را میبینیم که یکی از انها را انتخاب میکنیم.

safari developer tools

بعد از انتخاب وب سایت ، اینسپکتور سافاری بر روی لپ تاپ باز میشه که با تغییر بر روی آن میتوان تغییرات را بر روی گوشی موبایل مشاهده کرد.

developer tools iphone

با تغییر ساده بالا، تغییرات را بر روی گوشی موبایل میبینیم :

safari inspector develop tools

نکته : من این امکان را روی لپ تاپ مک و گوشی آیفون چک کردم و نمیدونم برای اندروید در دسترس است یا خیر.

دیباگ وبسایت به صورت آنلاین بر روی گوشی اندروید

برای کسانی که از گوشی اندروید استفاده میکنند خبر خوب این است که موزیلا فایرفاکس همچین امکانی را فرآهم نموده است که می توانید آن را مشاهده نمائید.

Debugging Firefox for Android over USB

شاد باشید.

نصب لاراول

برای نصب لاراول ابتدا بخش داکیومنتیشن لاراول را بررسی میکنیم که برای ورژنی که مایل هستیم نصب کنیم به چه نسخه ای از php  نیاز داریم، که معمولا بهتره حداقل نسخه ۵.۶  رو نصب داشته باشیم. البته اگر از XAMPP  استفاده میکنید دیگه نیازی نیست نگران این موضوع باشیم و از آخرین ورژن XAMPP  استفاده میکنیم.

گام اول : Composer  را نصب میکنیم.

composer یک پکیج منیجر php است که با استفاده از ان میتوان پکیج های مختلف php  را استفاده کرد و با استفاده از وب سایت packagist میتوانید پکیج های مختلفی که نیاز دارید را پیدا کنید و از آنها در پروژه های خود استفاده نمائید.

برای نصب composer طبق مستندات خود وبسایت عمل خواهیم کرد. و یا اینکه با استفاده از پیکج منیجر homebrew برای نصب آن اقدام میکنیم.

بعد از اینکه composer را نصب کردیم در صورتیکه در ترمینال کلمه composer را بنویسیم و Enter  بزنیم نصب شدن آن را به ما نمایش می دهد:

composer-installed-successfully

حالا که composer  را نصب کردیم با استفاده از دستور زیر به راحتی میتوانیم به مسیر مورد نظر بریم و فولدر پروژه را بسازیم و سپس پروژه لاراول را ایجاد کنیم :

composer create-project --prefer-dist laravel/laravel blog "۵.۳.*"

دقت کنید به جای نام blog نام فولدر پروژه ای که میخواهیم را مینویسیم.

تا به اینجای کار لاراول را نصب کردیم و میتونیم وارد فولدر پروژه پویم و فایلهای پروژه را ببینیم. اما در صورتیکه بخواهیم کار را راحتتر کنیم و نصب لاراول را آسان تر انجام دهیم.

بعد از اینکه composer را نصب کردیم با استفاده از دستور زیر آن را به صورت Global نصب میکنیم. یعنی فایل نصب شده را انتقال میدهد.

mv composer.phar /usr/local/bin/composer

در صورتیکه با نصب آن با مشکل مواجه شدید می توانید از صفحه دانلود آن ، آخرین نسخه آن را دانلود نمائید و سپس با ترمینال به مسیری که آن را دانلود کردید برید. مثلا اگر فایل دانلود شده را در دسکتاپ قرار دادید داخل ترمینال کافیه بنویسید cd/desktop  و سپس آن را به صورت Global نصب کنید به دستور زیر :

mv composer.phar /usr/local/bin/composer

در واقع دستور فوق فایل composerی که دانلود کردیم را انتقال می دهید.

اکنون که composer به صورت Global نصب شده است طبق داکیومنت لاراول دستور زیر را انجام می دهیم‌ و پکیج لاراول را نصب میکنیم :

composer global require "laravel/installer" 

طبق داکیومنت لاراول مسیر زیر را باید به مسیر PATH سیستم اضافه کنیم :

در سیستم عامل مکینتاش در قسمت ترمینال وارد روت اصلی میشویم ( با اینتر کردن cd ) و سپس با تایپ دستور ls -a  میتوانیم فایل ها موجود را مشاهده کنیم و تغییرات لازم را اعمال کنیم، تصویر زیر فایلهای موردنظر را نمایش می دهد، فایل .bash_profile فایلی است که میخواهیم ادیت را بر روی آن انجام دهیم :

file path on mac

مطابق تصویر زیر PATH File  را به آن اضافه و ذخیره میکنیم. ( خط انتخاب شده در تصویر زیر به آن اضافه شده است ).

path bash file

بعد از نوشتن PATH برای reload شدن فایل دستور زیر را مینویسیم :

source ~/.bash_profile

اکنون تنظیمات لازم اعمال شد. با تایپ دستور laravel –version نسخه ی لاراول به شما نمایش داده خواهد شد.

laravel-version

برای نصب لاراول با ترمینال به مسیر مورد نظر که میخواهیم پروژه لاراول را در آن ایجاد کنیم وارد می شویم و سپس  دستور زیر را تایپ میکنیم.

laravel new blog

در پست قبل دامنه ای مجازی به نام laracms ایجاد کردیم، وارد فولدر htdocs می شویم و دستور فوق را وارد میکنیم تا لاراول شروع به نصب کند :

نصب لاراول

در صورتیکه با موفقیت لاراول نصب شود پیغام زیر به شما نمایش داده خواهد شد.

install successfully laravel

وارد فولدر می شویم و دستور زیر را تایپ میکنیم :

php artisan serve

بعد از تایپ دستور فوق با خطای زیر مواجه می شویم :/

error 500 laravel

که لازم است سطوح دسترسی به فولدر را درست کنیم 🙂

chmod 777

و درنهایت :

php artisan serve

 

laravel

 

شاد باشید.

ایجاد دامنه ی مجازی ( Virtual Host )

قطعا به عنوان یک برنامه نویس با محیط لوکال هاست آشنایی دارید وآدرس localhost داخل کش مرورگرتون با انواع پروژه های مختلفی که اجرا می کنید وجود دارد 😉

خسته کننده است که هربار آدرس localhost/myfolder را در آدرس بار وارد کنیم و به فولدرهای مختلف دسترسی داشته باشیم. راه حل این موضوع ایجاد دامنه مجازی است که بدون استفاده از کلمه کلیدی localhost ، مثلا با استفاده از نام mekaeil.dev به فایلهای پروژه شخصی روی لوکال دسترسی خواهم داشت و می توانیم به هر تعداد که نیاز داریم دامنه مجازی را بر اساس پروژه های مختلف ایجاد کنیم.

در اینجا در چند مرحله ساده نحوه ساخت دامنه مجازی را بر روی سیستم عامل مکینتاش با هم انجام خواهیم داد البته تفاوتی با محیط های ویندوز و لینوکس ندارد و فایلهایی که باید تغییر داده شوند دقیقا همان فایلهایی هستند که در اینجا به آنها اشاره خواهیم کرد.

گام اول : فولدر مربوطه به پروژه ی خود را بسازید.

فولدری با نام laracms را در فولدر htdocs زمپ ساختم. مهم نیست این فولدر شما کجا قرار دارد ولی چون سایر پروژه های من در این فولدر هستند، این فولدر را نیز در همین مسیر ایجاد کردم.

Applications/XAMPP/xamppfiles/htdocs/laracms

 

گام دوم : ادیت فایل httpd-vhosts.conf

وارد مسیر زیر می شویم :

/private/etc/apache2/extra/httpd-vhosts.conf

و کد زیر را اضافه میکنیم :

<VirtualHost *:80>
   ServerName laracms.dev
   ServerAlias www.laracms.dev
   DocumentRoot "/Applications/XAMPP/xamppfiles/htdocs/laracms"
   ErrorLog "/private/var/log/apache2/laracms.dev-error_log"
   CustomLog "/private/var/log/apache2/laracms.dev-access_log" common
   ServerAdmin [email protected]
</VirtualHostt>

Virtual host configuration httpd-conf

گام سوم : ادیت فایل hosts

وارد محیط ترمینال شوید و بنویسید sudo nano /etc/hosts  تا فایل برای شما باز شود. سپس آدرسی که اضافه کردیم را به صورت زیر اضافه میکنیم :

edit-host-file-vhost-in-mac

گام چهارم : آپاچی را ریستارت کنید.

اگر مرورگرتون را بازکنید معمولا میتونید فولدری که ایجاد کردید را ببینید و فایلهای داخل آن را مشاهده نمایید.

اما من خودم با صفحه زیر مواجه میشدم !

vhost-on-mac

 

برای رفع این مشکل وارد مسیر زیر شوید و vhosts را داخل آن جستجو نمائید و سپس مطابق تصویر زیر خط دستوری زیر را از حالت کامنت خارج نمایید.

httpd.conf

vhosts

و در نهایت آپاچی را ریستارت نمائید و مرورگر را رفرش کنید 🙂

دامنه مجازی بر روی لوکال هاست در سیستم عامل مکینتاش

 

در نهایت که اینکار انجام شد، متاسفانه یک مشکل به وجود می آید که لوکال هاست با صفحه ۴۰۴ یا Access Denied  مواجه می شود!

localhost-access-denied

برای رفع این مشکل وارد فایل httpd-vhosts.conf شوید و لوکال هاست را به عنوان یک دامنه مجازی اضافه کنید.

add-localhost-in-vhosts

و مثل تنظیمات قبل به فایل hosts  نیز اضافه میکنیم :

add localhost in hosts file

و در نهایت موضوع حل شد :

xampp

ایجاد دامنه مجازی بر روی Ubuntu

برای ایجاد دامنه مجازی بر روی سیستم عامل Ubuntu مراحل زیر رو به ترتیب انجام می‌دهیم:

۱. قبل از هرچیزی اگر نیاز به آپدیت دارید، سیستم را آپدیت کنید:

sudo apt-get update
sudo apt-get install apache2

۲. حالا مثلا ما میخواهیم با دامنه example.local  برای مسیری که میخواهیم دامنه مجازی ایجاد کنیم، یک دایرکتوری ایجاد میکنیم:

sudo mkdir -p /var/www/example.local/public_html

به مسیر موردنظر پرمیشن لازم را می‌دهیم:

sudo chown -R $USER:$USER /var/www/example.local/public_html

sudo chmod -R 755 /var/www

در مسیر فوق یک فایل به نام index.html ایجاد کنید تا وقتی مسیر موردنظر باز شد صفحه برای ما باز شود.

۳. در این مرحله ما یک کپی از کانفیگ دیفالت میگیریم و  با اسم example.local.conf در دایرکتوری site-availables قرار میدهیم:

sudo cp /etc/apache2/sites-available/۰۰۰-default.conf /etc/apache2/sites-available/example.local.conf

کد زیر را داخل این فایل قرار میدهیم:

    ServerAdmin [email protected]
    ServerName example.local
    ServerAlias www.example.local
    DocumentRoot /var/www/example.local/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

۴. دامنه را فعال می‌کنیم:

sudo a2ensite example.local.conf

۵. دامنه را در فایل hosts اضافه میکنیم:

sudo nano /etc/hosts

به صورت زیر دامنه را مینویسیم:

۱۲۷.۰.۰.۱   example.local

۶. سیستم را restart میکنیم:

sudo systemctl restart apache2

sudo service apache2 restart

شاد و موفق باشید.

نصب لینوکس و ویندوز روی مکینتاش

اگر برنامه نویس باشید طبیعتا تمایل دارید سیستم عاملی که ازش استفاده می کنید به طور کامل زیرنظر خودتون باشه و بتونید با استفاده از کدهای ترمینال تغییراتی رو اعمال کنید و بسیاری از کارهاتون رو باهاش مدیریت کنید و… من خودم شخصا دوست دارم کد نویسی کنم، از کار کردن با ترمینال لذت میبرم و از طرفی هم کار با لینوکس خیلی جذابه  🙂

اولین کار، بررسی این موضوع بود که لینوکس رو به صورت bootable نصب کنم یا به صورت virtual machine؟!

برای نصب به صورت bootable اولین کاری که باید بکنیم لازمه فلاش مموری حداقل ۴ گیگ رو به حالت bootable دربیاریم تا بتونیم لینوکس رو نصب کنیم. برای اینکار بهترین راهنماهایی که پیدا کردم لینک های زیر بودند و طبق اون پیش برید راحت میتونید سیستم عاملی که مایل هستید کنار مک داشته باشید رو نصب کنید :

Installing and configuring Linux Mint in dual boot on an Apple Macbook Pro

Linux Mint 17 on the MacBook Pro

How to Install Linux Mint on a Mac – YouTube

ولی من خودم این حالت رو کنسل کردم چونکه من دوست دارم فقط برای کدنویسی از لینوکس استفاده کنم و حیفه محیط جذاب و فوق العاده مکینتاش رو بیخیال بشم و بهترین حالت استفاده از virtual machine هست که بتونیم سیستم عامل های دیگه رو درکنار مک نصب کنیم که برای اینکار باید حتما فایل سیستم عامل لینوکس یا ویندوز رو به فرمت iso داشته باشیم.

نصب لینوکس به صورت virtual

برای این روش نصب ۶ تا ابزار فوق العاده وجود داره که بعضی از اونها رایگان هستند.

در صورتیکه مایل هستید سیستم عامل ویندوز رو درکنار مک داشته باشید بهترین راه از دید من استفاده از امکانی هست که خود اپل فرآهم کرده، یعنی استفاده از Boot Camp . برای اینکار وارد سایت اپل شوید و از طریق Boot Camp Support نحوه ی نصب و راه اندازی کامل و شفاف توضیح داده شده است. ولی این نرم افزار فقط برای نصب ویندوز قابل استفاده است.

Boot Camp Apple

 

در صورتیکه بخواهید لینوکس رو در کنار مکینتاش داشته باشید این ابزارها هستد :

طبق بررسی هایی که انجام دادم ( تالارهای گفتگو و کامنت هایی که خوندم ) درصد رضایت کاربران از مورد چهارم یعنی VirtualBox خیلی بیشتر بود و منم این مورد رو انتخاب کردم.

الانم که دارم ازش استفاده میکنم، هم سرعت خوبی داره هم کار کردن باهاش خیلی راحته.

 

virtualbox

برای نصب VirtualBox من بهتون توصیه میکنم ویدئوی زیر رو ببینید و بعد طبق مواردی که گفته پیش برید هر چند توی نسخه جدیدش بعضی قسمتهاش متفاوته ولی کلیتش همونه و خیلی راحت نصب میشه.

Installing Mint on VirtualBox for Mac OS X – YouTube

امیدوارم مفید بوده باشه.

شاد باشید.