روش راه اندازی چندین سایت وردپرس روی یک سرور مجازی اوبونتو
مقدمه
وردپرس یک سیستم مدیریت محتوای (CMS) محبوب است که با یاری آن میتوانید سریع و آسان سایت راه بیاندازید. گاهی نیاز است که چندین سایت غیر مرتبط را روی یک سرور میزبانی کنید.
در این مقاله به این موضوع میپردازیم که چگونه میتوان دو وردپرس جداگانه با نام دامنه متفاوت را روی یک سرور مجازی میزبانی کرد. این موضوع را با راه اندازی سایت چندگانه اشتباه نگیرید.
اینکار را با استفاده از سرور های مجازی انجام خواهیم داد. در این راهنما از یک سرور مجازی اوبونتو ۱۲٫۰۴ استفاده شده است ولی توزیع های مختلف همگی به یک روش عمل میکنند.
پیش نیازها
این راهنما چند پیش نیاز دارد که بعضی از آنها را در مقالات قبلی کاملاً توضیح داده بودیم. قبل از ادامه مقاله حتماً کارهای زیر را انجام دهید:
برای میزبانی از سایت ها، یک سرور مجازی جدید بسازید و تنظیمات اساسی سرور را انجام دهید.
با کندوهاست دو نام دامنه بسازید.
یک LAMP stack روی اوبونتو نصب کنید.
در این مرحله باید لمپ روی اوبونتو نصب شده باشد و هر دو دامنه باید به سرورمجازی شما وصل باشند.
با مرورگر وب به هر دو دامنه سر بزنید. هر دو دامنه باید صفحه ایندکس پیش فرض آپاچی را نشان دهند.
اگر دامنه های شما به این صفحه منتهی نمیشوند، یا تنظیمات مرحله قبل اشتباه بوده است یا باید صبر کنید تا تغییرات DNS صورت بگیرد. تا وقتی این مشکل حل نشده، به مراحل بعد نروید.
دانلود وردپرس
هروقت مراحل قبلی را تکمیل کردید، به سرور لاگ این کنید و به home directory تغییر مسیر بدهید چون فایلها را آنجا دانلود خواهیم کرد:
کد:
cd
wget http://wordpress.org/latest.tar.gz
با فرمان زیر، فایلهای آرشیو را از حالت زیپ شده و فشرده دربیاورید:
کد:
tar xzvf latest.tar.gz
ایجاد پایگاه داده سایت و کاربران
قبل از اینکه ادامه دهیم باید در MySQL برای هر سایت، کاربر و پایگاه داده مستقلی بسازیم تا مطمئن شویم داده های سایت جدا و مستقل میماند.
با توجه به هدف این مقاله، از اطلاعات زیر استفاده خواهیم کرد:
کد:
Site Name firstsite.com secondsite.com
Database Name FirstDatabase SecondDatabase
Database User FirstUser SecondUser
Database Password FirstPassword SecondPassword
جدول بالا برای این است که در مورد فرمان هایی که استفاده خواهیم کرد ذهنیتی داشته باشید. هر وقت فرمان هایی که در ادامه میاید را تکمیل کردید، اطلاعات تان را جایگزین محتویات جدول بکنید.
با استفاده از اکانت Administrator که هنگام نصب Mysql ساخته اید لاگ این کنید:
روت پسورد Mysql خواسته میشود و سپس به پرامپت MySQL میرسید.
با فرمان های زیر، آن دو پایگاه داده را بسازید:
کد:
CREATE DATABASE FirstDatabase;
CREATE DATABASE SecondDatabase;
برای هر پایگاه داده یک کاربر ایجاد کنید:
کد:
CREATE USER FirstUser@localhost;
CREATE USER SecondUser@localhost;
سپس برای هر کاربر پسوردی را مشخص سازید:
کد:
SET PASSWORD FOR FirstUser@localhost= PASSWORD("FirstPassword");
SET PASSWORD FOR SecondUser@localhost= PASSWORD("SecondPassword");
با اعطای امتیازات به کاربران جدید کار تمام میشود. اینکار کاربران را با پایگاه داده مربوطه شان مرتبط میسازد و اجازه های مناسب را به آنها اعطا میکند:
کد:
GRANT ALL PRIVILEGES ON FirstDatabase.* TO FirstUser@localhost IDENTIFIED BY 'FirstPassword';
GRANT ALL PRIVILEGES ON SecondDatabase.* TO SecondUser@localhost IDENTIFIED BY 'SecondPassword';
برای اعمال شدن تغییرات، اطلاعات امتیازِ MYSQL را رفرش کنید:
از MYSQL خارج شده و به محیط شل برگردید:
پیکربندی دایرکتوری های اصلی سایت
هر دو سایت را در دایرکتوری های جداگانه ای در وب روت سرورمان نصب خواهیم کرد. به دایرکتوری /var/www/ بروید:
برای هر کدام از سایت ها یک دایرکتوری بسازید. فایل های سایت در اینجا نگهداری خواهد شد:
کد:
sudo mkdir FirstSite
sudo mkdir SecondSite
قبل از اینکه محتویات وب را به فولدرهایمان منتقل کنیم، پیکربندی نمونه را کپی کنید:
کد:
cp ~/wordpress/wp-config-sample.php ~/wordpress/wp-config.php
در نهایت فایل ها را در دایرکتوری هایی که در وب روت سرور ساخته بودید کپی کنید:
کد:
sudo rsync -avP ~/wordpress/ /var/www/FirstSite/
sudo rsync -avP ~/wordpress/ /var/www/SecondSite/
مالکیت دایرکتوری ها را به کاربر وب آپاچی بدهید و سپس یوزرنیم لینوکس خود را به گروه وب اضافه کنید:
کد:
sudo chown www-data:www-data * -R
sudo usermod -a -G www-data linux_user_name
پیکربندی وردپرس
هر سایت را با اطلاعات مربوطه پیکربندی میکنیم.
پیکربندی سایت اول
دایرکتوری ها را به document root سایت اول تغییر دهید:
کد:
cd /var/www/FirstSite
فایل پیکربندی وردپرس را برای ویرایش باز کنید:
کد:
sudo nano wp-config.php
قسمتی را پیدا کنید که حاوی فیلدهای زیر است و پایگاه داده (database)، نام کاربری (username) و رمز عبور (password) سایت اول را جایگزین کنید:
کد:
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'FirstDatabase');
/** MySQL database username */
define('DB_USER', 'FirstUser');
/** MySQL database password */
define('DB_PASSWORD', 'FirstPassword');
سپس save کرده و exit کنید.
پیکربندی سایت دوم
دایرکتوری ها را به document root سایت دوم تغییر دهید:
کد:
cd /var/www/SecondSite
فایل پیکربندی وردپرس را برای ویرایش باز کنید:
کد:
sudo nano wp-config.php
همان قسمتی را پیدا کنید که برای سایت قبلی ویرایش کردید و اینبار اطلاعات سایت دوم را وارد کنید:
کد:
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'SecondDatabase');
/** MySQL database username */
define('DB_USER', 'SecondUser');
/** MySQL database password */
define('DB_PASSWORD', 'SecondPassword');
سپس save کرده و exit کنید.
پیکر بندی میزبان مجازی آپاچی
باید آپاچی را طوری پیکربندی کنیم که ترافیک هر دامنه را به دایرکتوری مربوط به آن دامنه هدایت کند. اینکار را با ایجاد فایل های میزبان مجازی جداگانه برای هر دامنه انجام میدهیم.
دایرکتوری را به دایرکتوری سایت های در دسترس آپاچی تغییر دهید:
کد:
cd /etc/apache2/sites-available
برای هر سایت، با کپی فایل میزبان مجازی پیش فرض، یک فایل میزبانی مجازی جدید ایجاد کنید:
کد:
sudo cp default FirstSite
sudo cp default SecondSite
پیکر بندی میزبان مجازی سایت اول
فایل اولی را که برای پیکربندی میزبان مجازی برای سایت اول کپی کرده بودید را باز کنید:
اطلاعات داخل فایل را به شرح زیر تغییر دهید. به یاد داشته باشید که قسمت های قرمز رنگ را مطابق اطلاعات سایت اول جایگزین کنید:
کد:
<VirtualHost *:80>
ServerAdmin your_email_address
ServerName firstsite.com
ServerAlias www.firstsite.com
DocumentRoot /var/www/FirstSite
Options FollowSymLinks
AllowOverride None
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
. . .
. . .
اگر لازم است که پیوندهای ثابت (permalinks) را فعال کنید، میتوانید “AllowOverride None” را که در “” است را به “AllowOverride All” تغییر دهید. پس از انجام تغییرات، save کرده و فایل را ببندید.
پیکربندی میزبان مجازی سایت دوم
دومین فایل میزبان مجازی را برای ویرایش کردن باز کنید:
اطلاعات سایت دوم را وارد کنید:
کد:
ServerAdmin your_email_address
ServerName secondsite.com
ServerAlias www.secondsite.com
DocumentRoot /var/www/SecondSite
Options FollowSymLinks
AllowOverride None
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
. . .
. . .
سیو کرده و فایل را ببندید.
پیکربندی نهایی
چند گام لازم دیگر تا راه اندازی سایت مانده است.
اول اینکه وردپرس برای اینکه به درستی کار کند به نصب یک ماژول PHP اضافی نیاز دارد. با تایپ این نصبش کنید:
sudo apt-get install php5-gd
سپس فایل میزبان مجازی که ساخته بودیم را فعال کنید:
کد:
sudo a2ensite FirstSite
sudo a2ensite SecondSite
آخرسر آپاچی را ریلود کنید تا تغییراتی که داده ایم را بخواند:
کد:
sudo service apache2 reload
دیدن نتایج
برای دیدن سایت های وردپرس جدیدتان، آدرس دامنه را در مرورگرتان تایپ کنید.
اگر همه چیز را به درستی پیکربندی کرده باشید، با صفحه ای همچون صفحه زیر به شما خوشامد گفته خواهد شد:
اکنون میتوانید لاگ این کرده و هر سایت را به صورت مستقل پیکربندی کنید. این سایت ها کاملاً جدا از هم هستند و همچون حالتی که هرکدام بر روی یک سرور مجازی دیگر باشند قابل مدیریت و کنترل هستند.
منبع : کندوهاست
پاسخ : روش راه اندازی چندین سایت وردپرس روی یک سرور مجازی اوبونتو
عزیز فقط میشه بگین حداقل منابع مورد نیاز چقدر هست
پاسخ : روش راه اندازی چندین سایت وردپرس روی یک سرور مجازی اوبونتو
نقل قول:
نوشته اصلی توسط
Mr.Roham
عزیز فقط میشه بگین حداقل منابع مورد نیاز چقدر هست
این بستگی به کاری هست که میخواین با سایتتون انجام بدین. اگر امکانات زیادی مد نظرتون هست و افزونه هاتون زیاد خواهد بود و بازدیدتون بالا باشه طبیعتا منابع بالاتری خواهد خواست در غیر اینصورت ، رم 256 هم برای شما کافی خواهد بود با هارد 10 گیگابایت.
منابع ، نسبی هست و هیچ کس نمیتونه دقیقا بگه اینقدر منابع لازم داره. ;)
پاسخ : روش راه اندازی چندین سایت وردپرس روی یک سرور مجازی اوبونتو
نقل قول:
نوشته اصلی توسط
succes
این بستگی به کاری هست که میخواین با سایتتون انجام بدین. اگر امکانات زیادی مد نظرتون هست و افزونه هاتون زیاد خواهد بود و بازدیدتون بالا باشه طبیعتا منابع بالاتری خواهد خواست در غیر اینصورت ، رم 256 هم برای شما کافی خواهد بود با هارد 10 گیگابایت.
منابع ، نسبی هست و هیچ کس نمیتونه دقیقا بگه اینقدر منابع لازم داره. ;)
خیلی ممنون
امتحان می کنم حتما
Sent from my iPhone using Tapatalk
پاسخ : روش راه اندازی چندین سایت وردپرس روی یک سرور مجازی اوبونتو
سلام
خیلی عالی بود
خیلی وقت بود دنبال این بودم چجوری چند تا دامین با lamp بالا بیارم
مرسی