آموزش نصب وردپرس روی سرور ابری و مجازی
برای نصب وردپرس روی سرور ابری لینوکس طبق مراحل مطرح در مقاله پیش رو به یک سرور ابری اوبونتو 22.04 با دسترسی کاربر sudo، یک وبسرور، دیتابیس و PHP نیاز دارید. از طریق راهاندازی Linux، Nginx، MySQL و PHP میتوانید پیشنیازهای نصب وردپرس روی سرور مجازی را برآورده کنید. در نهایت نیز بهمنظور مدیریت احراز هویت و مجوز کاربر توسط وردپرس، لازم است به ایمنسازی وبسایتتان با SSL بپردازید. با انجام این پیشنیازها، حالا میتوانیم مراحل نصب وردپرس روی Cloud server را شروع کنیم:
1. برای ایجاد دیتابیس پکیج MySQL-server را نصب کنید.
برای نصب پکیج MySQL-server ابتدا با استفاده از دستور زیر پکیجهای لینوکس خود را آپدیت کنید:
sudo apt update
سپس با وارد کردن دستور زیر، دیتابیس را روی سرور ابری نصب کنید.
sudo apt install mysql-server
پس از اطمینان از نصب پکیج MySQL-server به ادامه آموزش نصب وردپرس روی سرورابریلینوکس بپردازید.
2. یک کاربر و دیتابیس MySQL برای وردپرس ایجاد کنید.
برای مدیریت و ذخیره اطلاعات کاربر و وبسایت در وردپرس باید یک کاربر و دیتابیس MySQL ایجاد کنیم. پس وارد حساب Root یا ریشه MySQL شوید. MySQL بهطور پیشفرض برای استفاده از افزونه احراز هویت auth_socket پیکربندی شده است. پس با دستور زیر میتوانید وارد حساب مدیریت MySQL شوید:
sudo mysql
اگر روش احراز هویت را از حالت پیشفرض تغییر دادهاید و از رمز عبور برای حساب ریشه MySQL استفاده میکنید، بهجای دستور بالا، کد زیر را بنویسید:
mysql -u root -p
بعد از نوشتن این دستور، نیاز است رمز عبور حساب ریشه MySQL خود را وارد کنید.
با ورود به سیستم، یک دیتابیس جداگانه با نام دلخواه بسازید تا وردپرس قادر به کنترل آن باشد. در دستور زیر از نام «wordpress» برای ایجاد دیتابیس استفاده شده است (به علامت نقطهویرگول (؛) در انتهای کد دقت کنید):
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
در ادامه یک حساب کاربری با نام و رمز عبور دلخواه ایجاد کنید و به دیتابیس جدید دسترسی بدهید. در دستور زیر از نام «wordpressuser» برای نام حساب کاربری استفاده شده است:
CREATE USER 'wordpressuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL ON wordpress.* TO 'wordpressuser'@'localhost';
بهاینترتیب یک دیتابیس و حساب کاربری بهطور اختصاصی برای وردپرس ساختهاید. برای اطمینان از اضافه شدن کاربر مورد نظر میتوانید دستور زیر را اجرا کنید و کاربر اضافهشده را مشاهده کنید.
SELECT user FROM mysql.user;
با نوشتن دستور زیر میتوانید از MySQL خارج شوید:
EXIT;
در گام اول از آموزش نصب وردپرس روی VPS، یک کاربر و دیتابیس MySQL ایجاد کردیم و در ادامه باید به نصب افزونههای PHP بپردازیم.
3. پکیج PHP را نصب کنید.
در ادامه آموزش نصب وردپرس روی کلود سرور باید پکیج PHP روی سیستم شما نصب باشد. برای این کار ابتدا با وارد کردن دستور زیر، به آپدیت پکیجهای لینوکس بپردازید:
sudo apt update
و در ادامه دستور زیر را وارد کنید:
sudo apt install --no-install-recommends php8.1
دستور --no-install-recommends از نصب شدن خودکار وب سرور آپاچی جلوگیری میکند.
بعد از تکمیل نصب PHP مراحل نصب وردپرس روی سرور لینوکس را ادامه دهید.
اگر بهتازگی قصد راهاندازی وبسایت روی سرور ابری را دارید، پیشنهاد میکنیم قیمتسرورابریلینوکس را از پلنهای ابر پایه دراک مشاهده کنید. هزینه پایین و کارایی مناسب پلنهای اقتصادی سرور ابری دراک را به انتخابی فوقالعاده برای راهاندازی وردپرس تبدیل کرده است.
4. افزونههای اضافی PHP را نصب کنید.
هنگام نصب Linux، Nginx، MySQL و PHP برای برقراری ارتباط PHP با MySQL به چندین افزونه نیاز دارید. با استفاده از دستور زیر میتوانید کاربردیترین افزونههای PHP را دانلود و نصب کنید:
sudo apt update
sudo apt install php-curl php-gd php-intl php-mbstring php-soap php-xml php-xmlrpc php-zip
بعد از اتمام نصب افزونهها، فرایند PHP-FPM را ریاستارت کنید تا پردازنده PHP در حال اجرا بتواند از آپشن های ی که بهتازگی نصب شدهاند، استفاده کند:
sudo systemctl restart php8.1-fpm
5. وب سرور NGINX را نصب کنید.
قبل از اقدام برای نصب پکیج NGINX، ابتدا مانند قبل پکیجهای لینوکس خود را با دستور زیر آپدیت کنید:
sudo apt update
در ادامه دستور زیر را وارد کنید تا NGINX نصب شود:
sudo apt install nginx
6. Nginx را پیکربندی کنید.
برای ادامه مراحل نصبوردپرسرویسرورمجازی، باید یک فایل پیکربندی در دایرکتوری
/etc/nginx/sites-available/
برای وبسایت خود داشته باشید. این فایل باید برای پاسخ به آدرس IP یا نام دامنه سرور شما پیکربندی شده و با گواهی SSL/TLS محافظت شده باشد.
در این مقاله از /etc/nginx/sites-available/wordpress بهعنوان نمونه و از /var/www/wordpress بهعنوان دایرکتوری ریشه راهاندازی وردپرس استفاده شده است. شما مسیر فایل پیکربندی خود را با این نمونه جایگزین کرده و از ریشه وب (Web root) مشخصشده در پیکربندی استفاده کنید.
برای شروع پیکربندی، دستور زیر را برای باز کردن فایل بلوک سرور سایت خود با امتیازهای sudo اجرا کنید:
sudo nano /etc/nginx/sites-available/wordpress
در ادامه نصب وردپرس روی سرور کلود باید در بلوک اصلی server، چند location block اضافه کنید.
لوکیشن بلاکهایی برای درخواستهای فایلهای /favicon.ico و /robots.txt بسازید تا نیازی به ذخیره گزارش درخواستهای هرکدام از این فایلها نباشد.
از یک لوکیشن، Regular expression را برای مطابقت با هر درخواستی برای فایلهای استاتیک استفاده کنید. ما ثبت این درخواستها را خاموش کرده و آنها را بهعنوان «قابل ذخیرهسازی» (Highly cacheable) علامتگذاری میکنیم. شما میتوانید فهرست فایلهای استاتیک را به نحوی تنظیم کنید که حاوی همه افزونههای فایلهای مورد استفاده توسط وبسایت شما باشد:
server {
. . .
location = /favicon.ico { log_not_found off; access_log off; }
location = /robots.txt { log_not_found off; access_log off; allow all; }
location ~* \.(css|gif|ico|jpeg|jpg|js|png)$ {
expires max;
log_not_found off;
}
. . .
}
بعد از انجام این کار، داخل بلوک location / موجود، فهرست try_files را تنظیم کنید. بهاینمنظور علامت # را مشابه کد زیر به ابتدای خط اضافه کنید و عبارت try_files $uri $uri/ /index.php$is_args$args; را در ادامه بنویسید. با این کار تنظیمات پیشفرض به کامنت تبدیل خواهد شد. بهاینترتیب بهجای برگرداندن خطای 404 بهعنوان گزینه پیشفرض، کنترل با آرگومنتهای درخواست به فایل index.php منتقل میشود.
server {
. . .
location / {
#try_files $uri $uri/ =404;
try_files $uri $uri/ /index.php$is_args$args;
}
. . .
}
در انتها نیز فایل را ذخیره کنید و ببندید.
در ادامه با تایپ دستور زیر، پیکربندی خود را برای خطاهای Syntax تحلیل کنید:
sudo nginx -t
درصورت گزارش نشدن خطا، دستور زیر را تایپ کنید تا Nginx دوباره بارگذاری شود:
sudo systemctl reload nginx
تا این بخش از آموزش، کلیه پیشنیازها و الزامات نصب وردپرس روی سرور ابری را انجام دادیم. حالا نوبت به دانلود و نصب وردپرس میرسد.
7. وردپرس را دانلود و نصب کنید.
برای دانلود نسخه فشرده وردپرس ابتدا باید با استفاده از دستور زیر، دایرکتوری را به یک دایرکتوری قابل نوشتن تبدیل کنید.
cd /tmp
دستور زیر را برای دانلود آخرین نسخه فشرده وردپرس بنویسید:
curl -LO https://wordpress.org/latest.tar.gz
با دستور زیر، فایل دانلودشده را از حالت فشرده خارج کنید:
tar xzvf latest.tar.gz
فایلهای دانلودشده باید بهصورت لحظهای به ریشه داکیومنت منتقل شوند. برای این کار، ابتدا فایل پیکربندی نمونه را روی نام فایلی که وردپرس آن را میخواند، کپی کنید:
cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php
در ادامه، کل محتویات دایرکتوری را در ریشه داکیومنت خود کپی کنید. در این مقاله از فلگ -a برای اطمینان از حفظ مجوزها استفاده شده است. نقطه قرارگرفته در انتهای دایرکتوری منبع نشان میدهد که همه چیز در دایرکتوری (حتی فایلهای پنهان) باید کپی شود:
sudo cp -a /tmp/wordpress/. /var/www/<^>your_domain/wordpress
بعد از قرار دادن فایلها در جای خود، مالکیت را به کاربر و گروه www-data (همان کاربر و گروه اجراکننده Nginx) اختصاص دهید. Nginx برای سرویسدهی به وبسایت و انجام بهروزرسانیها بهطور خودکار، باید قادر به خواندن و نوشتن فایلهای وردپرس باشد. از دستور زیر برای انجام این کار استفاده کنید:
sudo chown -R www-data:www-data /var/www/your_domain/wordpress
8. فایل پیکربندی وردپرس را تنظیم کنید.
بعد از راهاندازی وردپرس روی Cloud server و باز کردن فایل، برای تامین امنیت کافی باید برخی از کلیدهای مخفی را تنظیم کنید. وردپرس از یک مولد (Generator) امن برای این مقادیر برخوردار است که برای گرفتن آنها باید دستور زیر را تایپ کنید:
curl -s https://api.wordpress.org/secret-key/1.1/salt/
با این کار، مقادیر منحصربهفردی در خروجی به شما نمایش داده خواهد شد که به خطوط پیکربندی معروف هستند. برای تنظیم کلیدهای ایمن میتوانید از این عبارت بهطور مستقیم با Copy/Paste در فایل پیکربندی خود استفاده کنید.
اکنون فایل پیکربندی وردپرس را باز کنید:
sudo nano /var/www/your_domain/wordpress/wp-config.php
مشابه زیر بخشی را پیدا کنید که حاوی مقادیر ساختگی برای آن تنظیمات باشد:
. . .
define('AUTH_KEY', 'put your unique phrase here');
define('SECURE_AUTH_KEY', 'put your unique phrase here');
define('LOGGED_IN_KEY', 'put your unique phrase here');
define('NONCE_KEY', 'put your unique phrase here');
define('AUTH_SALT', 'put your unique phrase here');
define('SECURE_AUTH_SALT', 'put your unique phrase here');
define('LOGGED_IN_SALT', 'put your unique phrase here');
define('NONCE_SALT', 'put your unique phrase here');
. . .
این خطها را پاک کرده و مقادیری را که از خط دستور کپی کردهاید، Paste کنید؛ مانند عبارتهای زیر:
. . .
define('AUTH_KEY', 'VALUES COPIED FROM THE COMMAND LINE');
define('SECURE_AUTH_KEY', 'VALUES COPIED FROM THE COMMAND LINE');
define('LOGGED_IN_KEY', 'VALUES COPIED FROM THE COMMAND LINE');
define('NONCE_KEY', 'VALUES COPIED FROM THE COMMAND LINE');
define('AUTH_SALT', 'VALUES COPIED FROM THE COMMAND LINE');
define('SECURE_AUTH_SALT', 'VALUES COPIED FROM THE COMMAND LINE');
define('LOGGED_IN_SALT', 'VALUES COPIED FROM THE COMMAND LINE');
define('NONCE_SALT', 'VALUES COPIED FROM THE COMMAND LINE');
. . .
در ادامه، باید برخی از تنظیمات اتصال دیتابیس مانند نام دیتابیس، کاربر دیتابیس، رمز عبوری که در MySQL پیکربندی شده است و همچنین روش مورد استفاده وردپرس برای نوشتن در فایلسیستم را تغییر دهید. شما میتوانید روش فایلسیستم را روی «direct» تنظیم کنید. این تنظیمات را زیر تنظیمات اتصال دیتابیس یا هرجای دیگری در فایل اضافه کنید:
. . .
define( 'DB_NAME', 'wordpress' );
/** MySQL database username */
define( 'DB_USER', 'wordpressuser' );
/** MySQL database password */
define( 'DB_PASSWORD', 'password' );
. . .
define( 'FS_METHOD', 'direct' );
بعد از انجام کار، فایل را ذخیره کنید و ببندید.
9. تکمیل نصب وردپرس روی سرور مجازی را از طریق مرورگر
برای تکمیل نصب وردپرس روی VPS یا سرور ابری باید از رابط وب (Web interface) وردپرس استفاده کنید. در مرورگر وب خود، به نام دامنه سرور یا IP آدرس عمومی بروید:
http://server_domain_or_IP/wordpress
در ادامه، زبان مورد نظرتان را انتخاب کنید و سپس به صفحه تنظیمات اصلی بروید.
یک نام برای سایت وردپرسی خود و یک نام کاربری انتخاب کنید. بعد از نامگذاری، بهطور خودکار یک رمز عبور قوی ایجاد میشود که باید آن را ذخیره کرده یا رمز عبور مورد نظرتان را جایگزین کنید.
در فیلد مربوطه، آدرس ایمیل خود را وارد کرده و انتخاب کنید که آیا وبسایت شما برای موتورهای جستوجو قابل مشاهده باشد یا خیر.
بعد از ورود به سیستم، به داشبورد مدیریت وردپرس هدایت خواهید شد. بهاینترتیب نصب وردپرس روی سرور ابری یا مجازی را با موفقیت به پایان رساندهاید.
راهاندازی وردپرس روی سرور ابری دراک با پایداری و امنیت بالا
در این مقاله به آموزش نصب وردپرس روی سرور ابری و مجازی لینوکس پرداختیم و کلیه مراحل را بهطور کامل با هم تحلیل کردیم. برای این کار قبل از هرچیز باید یک سرور ابری یا VPS با توجه به نیازهای کسبوکار یا هدف شخصی خود تهیه کنید. ابر دراک برای پاسخگویی به نیازهای متنوع کاربران اقدام به ارائه سرورهای ابری در پلنهای اقتصادی و بهصرفه کرده است. پلنهای سرور ابری دراک عبارتاند از:
- ابر پایه: اگر بهتازگی قصد راهاندازی وبسایت وردپرسی دارید، پلنهای ابر پایه با قیمت پایین بهترین انتخاب برای شم است.
- ابر استاندارد: اگر یک وبسایت پویا دارید، پلنهای ابر استاندارد یک انتخاب بهصرفه با منابع محاسباتی مناسب برای شما به شمار میرود.
- ابر پیشرفته: درصورتیکه وبسایت شما پرمخاطب و در اکثر روزهای سال پرترافیک است، باید از منابع محاسباتی قدرتمند با توان پاسخگویی بالا استفاده کنید.
ابر دراک در راستای توسعه محصولات ابری خود، قابلیتهای جدیدی را به سرورهای ابری خود اضافه کرده است:
۱. اضافه شدن دو سیستمعامل جدید Alma و Rocky
۲. فعالسازی تحویل فوری در همه سرورهای ایران و خارج از کشور
۳. قابلیت بازسازی دیسک
۴. قابلیت استفاده از ISO Image برای ماشینهای مجازی
۵. پشتیبانی رایگان از هر دو ورژن IPv6 و IPv4 در سرور ابری ایران و خارج از کشور
۶. پشتیبانی از PTR Record در ماشین مجازی
اگر قصد خرید سرور ابری در پلنهای شخصیسازیشده را دارید، از طریق شماره تلفن 02191014197 با کارشناسان ابر دراک تماس بگیرید یا برای کسب اطلاعات بیشتر به آدرس Derak.cloud مراجعه کنید.
خبرکاو
ارسال نظر