آموزش ویدئویی نصب وردرپرس در ابونتو 20.04
نصب وردپرس روی اوبونتو پیشنیاز بسیاری از توسعهدهندگان وب است. کسانی که قصد استفاده از هاست اشتراکی را ندارند و مایل به اجرای سایت روی VPS هستند میتوانند از این آموزش استفاده کنند. بهصورت پیشنیاز، استفاده از یک هاست اشتراکی و همینطور CMS یا سیستم مدیریت محتوای وردپرس، موردنیاز خواهد بود.
به دلیل عدم وجود رابط کاربری گرافیکی، اوبونتو در مقایسه با سایر نرمافزارهای سرور، مناسبتر است. این بهجای حفظ سرور و فرایندهای غیرضروری پسزمینه آن، فضا را برای اجرای سایت شما آزاد میکند. علاوهبراین به شما امکان میدهد تا کمی بیشتر صرفهجویی کنید. شما میتوانید یک سرور مقرونبهصرفهتر و با منابع کمتر انتخاب کنید زیرا در مصرف منابع صرفهجویی خواهید کرد.
در این آموزش قصد داریم یک سیستم مدیریت محتوای وردپرس را روی سرور ابونتو 20.04 نصب و راهاندازی کنیم. در این پروسه به طبع انتظار میرود که نصب دیتابیس MariaDB, MySQL، نصب PHP و همینطور نصب کلی این پلتفرم انجام شود. در ادامه آموزشهای وب هاستینگ دوریس هاست، بهصورت مفصل در این مورد صحبت خواهیم کرد.
شروع نصب وردپرس روی اوبونتو 2004
اوبونتو با یک رابط خط فرمان عالی طراحی شده است که یادگیری آن بهعنوان پشتیبانی پیشفرض برای Bash آن نسبتاً آسان است. جدا از آن، دستورات دیگری نیز دارد که مدیریت سرور، استفاده از فایل های محلی و کار محیط توسعه را ساده میکند.
زمانی که اقدام به خرید یک سرور مجازی یا اختصاصی میکنید، شرکت ارائهدهنده خدمات، ریسلر یا سرویسدهنده، امکان اتصال بهصورت SSH را در اختیار شما قرار میدهد. در واقع SSH به شما این اجازه را میدهد که بهصورت متنی به سرورها متصل شوید و تغییرات لازم را روی آنها انجام دهید. در این پروسه، برای اجرای هرکدام از دادهها، هیچ محیط توسعه UI و UX سیستمعامل در دسترس شما نیست؛ در واقع صرفاً از خط فرمان یا همان Command-line استفاده خواهید کرد.
البته که بسیاری از سرویسدهندهها، امکان اتصال از طریق کنسول را نیز در اختیارتان قرار میدهند، در واقع محیطی شبیه به یک وبسایت برای شما روی مرورگر اجرا میشود. پروسه نصب PHP، نصب دیتابیس MariaDB, MySQL و البته نصب Nginx از این طریق ممکن خواهد بود.
پیشنیازها برای نصب وردپرس روی اوبونتو
قبل از هر چیزی، شما نیاز به یک دامنه خواهید داشت. این دامنه به یک آدرس آیپی متصل است که وبسایت شما روی آن به نمایش درمیآید.
اوبونتو از بهروزرسانیهای امنیتی بسیار مکرر نرمافزار پایه خود لذت میبرد و در مقایسه با سایر سیستمعاملها هنگام طراحی فایروال عالی برای وبسایت خود، انعطافپذیری بسیار بیشتری را به کاربران خود ارائه میدهد.
در واقع ضروری است که رکورد A به دامنه و DNS دامنه شما متصل شود. شما یا از نیم سرور خودتان استفاده میکنید یا از طریق پنلهای دیگر، این امکان را خواهید داشت. درصورتیکه در این مورد اطلاعات کافی را ندارید میتوانید به آموزشهای مرتبط مراجعه کنید.
برای بررسی صحت اتصال دامنه به آی پی و سرور، لازم است که رکورد A آن را روی وبسایتهایی که برای این کار طراحی شدهاند کنترل کنید. میتوانید از هر وبسایتی استفاده کنید (ما در آموزش از وبسایت و آدرس: https://mxtoolbox.com/DnsLookup.aspx برای بررسی این موضوع بهره گرفتیم):
مطابق تصویر زیر، میبینید که آی پی مدنظر روی این دامنه ست شده است و شما میتوانید آن را بررسی کنید:
برای اتصال به SSH شما میتوانید از محیط ترمینال هم استفاده کنید در غیر این صورت، نرمافزار putty بهعنوان سیستم شبیهساز برای اتصال به سرور لینوکس، مشکلتان را حل میکند. کافی است برای نصب وردپرس روی اوبونتو این ابزار را نصب کنید، دادههای موردنظر را وارد کرده و سپس به سیستم مدیریت یا ریموت سرور مجازی خود متصل شوید.
باز هم مطابق تصویر زیر، کافی است که عبارت ssh، نام کاربری و سپس آی پی سایت یا سرور خود را درج کنید. (اوبونتو چندین مخزن دارد. از طریق آنها، نرمافزار اضافی را برای سیستم شما فراهم میکند. این مخازن شامل نرمافزار آزاد است که توسط اوبونتو پشتیبانی میشود و دستگاههای اختصاصی رایگان و منبعباز که توسط یک انجمن نگهداری میشوند، نرمافزاری بوده که توسط اوبونتو پشتیبانی میشود.)
البته این در صورتی است که از پورت پیشفرض استفاده کنید. این موضوع را از سوی سرویسدهنده خدمات هاستینگ و سرور جویا شوید. درصورتیکه پورت شما غیر از حالت پیشفرض باشد باید از آن استفاده کنید. برای واردکردن پورتهای غیر پیشفرض میتوانید از دستور –p و سپس آدرس پورت بعد از ssh استفاده کنید. پس از فشردن کلید اینتر، وارد صفحه دریافت رمز عبور میشوید.
به دسترسی Root متصل شوید!
برای عملیات معمول، نصب وردپرس روی اوبونتو یا انجام هر پردازش دیگر لازم است که از طریق حساب کاربری Root یا همان ادمین وارد سرور خود شوید.
دقت کنید که برای انجام عملیات، بدون بهرهگیری از دستور sudo میتوانید کاربر خود را به روت ارتقا دهید:
برای انجام این کار، مطابق تصویر بالا، دستور sudo su را وارد کنید. حالا و در ادامه دستور apt update را استفاده خواهیم کرد. در واقع این دستور کاتالوگ و مدیریت پکیج در بستههای توسعه نرمافزاری لینوکس را بهروزرسانی خواهد کرد. پس از انجام آن میتوانید از دستور apt upgrade استفاده کنید. درصورتیکه از شما تأیید خواسته شد عبارت y را درج کنید. با این دستورات سیستم شما برای نصب وردپرس روی اوبونتو آپدیت خواهد شد که مدتی به طول میانجامد.
پس از اتمام این پروسه میتوانید از دستور Reboot استفاده کنید تا سیستم شما یکبار ریاستارت شود تا مطمئن شوید همه چیز بهدرستی انجام شده است. دقت کنید زمانی که کرنل بروز میشود صرفاً با انجام ریاستارت، این پروسه عملی خواهد شد در غیر این صورت تغییرات قابلبررسی نخواهد بود.
شما برای اجرای یک سیستم مدیریت محتوا بهعنوان یک ابزار به نصب چند سیستم و پلتفرم روی سرور نیاز خواهید داشت. در واقع به بیان سادهتر میتوان گفت که برای نصب وردپرس روی اوبونتو، شما به این قابلیتها بهصورت پیشنیاز احتیاج خواهید داشت. تمامی این موارد بر روی هاستهای اشتراکی نصب میشوند.
موارد زیر از جمله مهمترین این ارکان خواهد بود:
- نصب دیتابیس MariaDB, MySQL
- نصب Nginx
- نصب PHP
انجین ایکس در واقع وب سرور شما خواهد بود، پی اچ پی برای اجرای وردپرس به دلیل طراحی و توسعه بر پایه این سیستم ضروری است و در نهایت پایگاهداده شما نیز بسته به چیزی که استفاده میکنید میتواند متغیر باشد. عموم کاربران از MySQL استفاده میکنند.
در این آموزش، ما از Nginx استفاده خواهیم کرد؛ نصب Nginx پروسهای به نسبت ساده بوده و البته ویرایشکردن و اجرای فایلهای پیکربندی در آن آسان است. بسیار سبک بوده و از طرفی برای سرورهای کوچک مشکلات کمتری را ایجاد میکند. البته یکی از بخشهای مهم این آموزش، نصب SSL و بهرهگیری از HTTPS بهعنوان یک پروتکل ایمن روی سایت است.
درصورتیکه صفحه کنسول شما در حال اجراء باشد اکنون عملیات ریبوت شدن سرور را نمایش میدهد. البته اگر صرفاً به SSH دسترسی دارید کافی است چند دقیقه صبر کرده و اجازه دهید همه چیز بهدرستی اجراء شود. پس از آن مجدداً دستور
ssh user ip
را مطابق تصویر زیر وارد کرده و به سرور خود متصل شوید:
میبینید که برای نصب وردپرس روی اوبونتو، عملیات اجرای دوباره انجام میشود. حالا مجدداً لازم است که مطابق آموزش، خود را به کاربر روت ارتقا دهید تا بدون نیاز به sudo دستورات را وارد کنید.
حالا ضروری است بر اساس کدی که در اختیار شما قرار میدهیم تمامی پکیجهای موردنیاز برای نصب وردپرس بر روی اوبونتو را بر اساس دستور زیر نصب کنید:
sudo apt install php-imagick php7.4-fpm php7.4-mbstring php7.4-bcmath php7.4-xml php7.4-mysql php7.4-common php7.4-gd php7.4-json php7.4-cli php7.4-curl php7.4-zip nginx certbot python3-certbot-nginx
با استفاده از دستورات بالا تمامی پیشنیازها و گواهینامهها برای نصب دریافت و پکیجهای آنها روی سرور شما ذخیره میشود.
نصب وردپرس بر روی سرور با SSH
پس از این که عملیات بالا بهصورت کامل روی سرور مجازی شما انجام شد وارد وبسایت وردپرس و بخش دانلود به آدرس زیر شوید:
https://wordpress.org/download/
با ورود به این صفحه مطابق تصویر زیر کافی است روی دکمه Download WordPress کلیک راست کرده و گزینه کپی لینک را انتخاب کنید. البته پیش از انجام این کار لازم است که پکیجهای مرتبط با mariadb نیز نصب شود که مطابق زیر خواهد بود؛ منوی دستورات ترمینال لینوکس خود را انتخاب کنید:
apt install mariadb-server unzip
حالا عملیات نصب شروع خواهد شد و پایگاهداده مدنظر شما برای نصب وردپرس بر روی اوبونتو ذخیرهسازی و اجراء میگردد.
حالا لازم است برای نصب دیتابیس MariaDB, MySQL یک مسیر مشخص کنید میتوانید بهراحتی برای این کار از دستورات لینوکس استفاده کنید. حتی اگر پوشه از قبل وجود نداشته باشد بر اساس دستوری که در ادامه میبینید قابلاجراء و همینطور ایجاد خواهد شد.
mkdir –p /usr/share/nginx
سپس با استفاده از این دستور میتوانید پکیج وردپرس را بر روی سرور خود ذخیره و نگهداری کنید:
wget https://wordpress.org/latest.zip
به همین راحتی میتوانید آخرین نسخه وردپرس را روی سرور خود دریافت کنید. سپس لازم است که پس از دانلود، فایل از حالت فشرده خارج شود.
با استفاده از دستور:
unzip latest .zip –d /usr/share/nginx/
فایلهای وردپرس از حالت فشرده خارج خواهد شد. در مراحل بعد برای نصب وردپرس روی اوبونتو لازم است که وارد محیط پایگاهداده خود شوید که البته مبنای اجرای هرکدام از دستورات آن، SQL خواهد بود. برای بررسی این موضوع کافی است که از دستور زیر استفاده کنید:
mariadb –u root
درصورتیکه پایگاهداده بهدرستی نصب شده باشد میبینید که وارد این محیط میشوید و مطابق تصویر زیر، دادههای مرتبط در اختیار شما قرار میگیرد.
درصورتیکه مایل به ساخت یک پایگاهداده هستید باید از دستورات زبان توسعه SQL استفاده کنید. مثلاً برای ساخت یک دیتابیس، به کد زیر نیاز دارید.
;create database wordpress
کافی است این کد را وارد کنید؛
rant all privileges on wordpress.* to wpuser@localhost identified by ‘your-password
بهجای your-password میتوانید رمز عبور مدنظر خود را ایجاد کنید.
پس از این که با پیغام اعطای سطح دسترسی مواجه شدید لازم است که این بار از کد زیر استفاده کنید:
;flush privileges
سپس از Exit برای خروج از پایگاهداده استفاده کنید. حالا ضروری است که وارد ادیتور Nano در لینوکس شده و مسیر دایرکتوری وبسایت خود را ایجاد کنید که برای انجام این پروسه میتوانید از کد زیر استفاده کنید:
nano /etc/nginx/conf.d/amozesh.conf
پیکربندی Nginx روی سرور لینوکس اوبونتو
سپس وارد محیطی مشابه تصویر زیر میشوید در این بخش باید کدی که در اختیار شما قرار میدهیم را paste کنید. این مربوط به انجام تمامی عملیات پیکربندی سرور برای ساخت بلاکهای انجین ایکس به جهت نصب وردپرس خواهد بود.
مثلاً GZip بر روی سرور شما نصب و راهاندازی خواهد شد:
server {
listen 80;
listen [::]:80;
server_name www.example.com example.com;
root /usr/share/nginx/example.com/;
index index.php index.html index.htm index.nginx-debian.html;
location / {
try_files $uri $uri/ /index.php;
}
location ~ ^/wp-json/ {
rewrite ^/wp-json/(.*?)$ /?rest_route=/$1 last;
}
location ~* /wp-sitemap.*.xml {
try_files $uri $uri/ /index.php$is_args$args;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
client_max_body_size 20M;
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ .php$ {
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
include snippets/fastcgi-php.conf;
# Add headers to serve security related headers
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection “1; mode=block”;
add_header X-Permitted-Cross-Domain-Policies none;
add_header X-Frame-Options “SAMEORIGIN”;
}
#enable gzip compression
gzip on;
gzip_vary on;
gzip_min_length 1000;
gzip_comp_level 5;
gzip_types application/json text/css application/x-javascript application/javascript image/svg+xml;
gzip_proxied any;
# A long browser cache lifetime can speed up repeat visits to your page
location ~* .(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$ {
access_log off;
log_not_found off;
expires 360d;
}
# disable access to hidden files
location ~ /.ht {
access_log off;
log_not_found off;
deny all;
}
}
البته این کد نیاز به تغییرات خواهد داشت میتوانید مطابق زیر عمل کنید:
بهجای آدرس سایت که در این بخش درج میشود باید آدرس وبگاه اینترنتی خود را وارد کنید:
مطابق تصویر زیر، مسیر نصب وردپرس و نصب Nginx را نیز به همین ترتیب مشخص کنید:
این بخش که در تصویر پایین مشخص است نیز باید بهدرستی چک شود البته حالا تغییری در آن ایجاد نمیکنید. پس از نصب PHP برای انجام عملیات نصب وردپرس روی اوبونتو میتوانید این کار را انجام دهید.
اکنون لازم است که با کلیدهای ترکیبی CTRL+X و سپس کلید Y تغییرات را ذخیرهسازی کنید.
حالا باید از دستور دیگری استفاده کنید که مطمئن شوید تمامی دادههای فایل شما درست است و بهخوبی اجراء میشود.
nginx -t
فعالسازی و نصب PHP روی سرور لینوکس
در ادامه این مراحل لازم و ضروری است که php را استارت و سپس آن را فعالسازی کنید. این یکی از اصلیترین ارکان نصب وردپرس روی اوبونتو خواهد بود. سیستم مدیریت محتوای وردپرس بر پایه php طراحی شده است و قطعاً به سیستم اجرای آن روی یک سرور لینوکس مشابه هاستهای سی پنل و دایرکت ادمین نیاز دارد.
systemctl start php 7.4 –fpm
systemctl enable php7.4 –fpm
ضروری است که دیگر سرویسهای موردنیاز برای نصب وردپرس روی اوبونتو را نیز فعالسازی کنید.
systemctl start mariadb
systemctl start mariadb nginx
systemctl enable mariadb nginx
حالا لازم است بررسی شود که آیا فایل php.-fpm.sock بهدرستی روی سرور شما ایجاد شده است؛ برای این کار هم میتوانید از دستور زیر استفاده کنید:
ls/run/php
حالا با استفاده از این دستور، nginx خود را اجراء کنید:
nginx –s reload
بررسی صحت اجرای وردپرس روی سرور لینوکس
درصورتیکه قصد نصب وردپرس روی اوبونتو را دارید لازم است کنترل کنید که آیا صفحه نصب یا همان پکیج همیشگی روی دامنه شما اجراء میشود یا خیر؟ بهصورت پیشفرض و درست مانند سی پنلها، شما میتوانید این مسئله را با چککردن همان صفحه www یا public_html که البته روندی مشابه است انجام دهید.
حالا میتوانید برای این که بررسی کنید آیا وردپرس بر روی دامنه اصلی شما نصب شده و میتوانید آن را فراخوانی کنید وارد وبسایت خود شوید. روی مرورگر، آدرس سایت خود را درج کنید. درصورتیکه کل پروسه نصب وردپرس روی اوبونتو بهدرستی انجام شده باشد با صفحه نصب، اجراء و همینطور راهاندازی وردپرس روبرو خواهید شد:
اگر آموزش را بهدرستی طی کرده باشید با چیزی مشابه تصویر بالا مواجه میشوید. البته مطابق چیزی که در گوشه آدرس وبگاه مشاهده میکنید پروتکل SSL بر روی وبسایت شما فعال نشده است در نتیجه سایت شما ناامن نمایش داده میشود.
برای نصب این پروتکل که باید توسط سرویسدهنده هاست و سرور در اختیار شما قرار گرفته باشد میتوانید از دستور زیر استفاده کنید:
sudo certbot –nginx –agree-tos –redirect –hsts –staple-ocsp –email you@example.com -d yourdomain.com,www.yourdomain.com
بهجای ایمیل، آدرس ایمیل و بهجای آدرس وبگاه، آدرس وبسایت خود را وارد کنید. دستورات دیگر، نیازی به تغییر نخواهند داشت.
پس از درج کد بالا در ترمینال لینوکس از شما خواسته میشود که پیام آیا تأیید میکنید پیامها، خبرنامهها و… نیز برای شما ارسال گردد که با استفاده از Y آن را تأیید و با استفاده از N این امکان را رد کنید. پس از آن میتوانید عملیات نصب وردپرس روی اوبونتو را انجام دهید.
نصب وردپرس روی اوبونتو
حالا و در این بخش با ورود به صفحه نصب وردپرس روی اوبونتو، شما این امکان را خواهید داشت که اطلاعات پایگاهداده خود را وارد کرده و سپس بهراحتی سایت وردپرسی خود را روی یک سرور لینوکس اجراء کنید. نصب وردپرس روی اوبونتو وارد فاز اصلی خواهد شد.
این اطلاعات در بخش ساخت پایگاهداده توسط شما انتخاب شده است که به طبع با چیزی که ما برگزیدهایم متفاوت خواهد بود.
سپس وارد صفحه دیگر و بخش انتخاب عنوان سایت، نام کاربری، رمز عبور، درج آدرس ایمیل و… خواهید شد که مطابق همیشه میتوانید آنها را انتخاب کنید. بر اساس تصویر زیر، گزینهای پیش و روی شماست که اگر تیک آن را انتخاب کنید دادههای وبسایت شما در اختیار موتورهای جستجو قرار نمیگیرد.
سپس دکمه نصب وردپرس را انتخاب کرده و با صفحه ورود به وردپرس، سایت خود را مشاهده نمایید. در نهایت میبینید که سایت شما روی یک سرور مجازی لینوکس اوبونتو اجراء شده است. بههرحال پروسه نصب وردپرس روی اوبونتو مزیتهای خاص خود را دارد.
پله آخر: مزایای نصب وردپرس روی اوبونتو
اوبونتو یکی از بهترین سیستمعاملها برای اجرای سایت وردپرس شماست. میدانیم این یک ادعای بزرگ است اما باید بگوییم که کاملاً عملی خواهد بود. جدا از اینکه بهصورت رایگان در دسترس بوده و همچنین یک سیستمعامل مبتنی بر لینوکس منبعباز است. اوبونتو در طول سالها نسخههای مختلفی از این سیستمعامل را منتشر کرده است.
اوبونتو رایگان است
بهعنوان یک مبتدی، لازم نیست نگران داشتن بودجه برای اجرای سایت وردپرس خود در اوبونتو باشید زیرا کاملاً رایگان است. بدون نیاز به هزینه مجوز اوبونتو به میلیونها کسبوکار، مؤسسه و وبلاگنویس حرفهای این امکان را داده است که از خدمات آنها استفاده کرده و وبسایت خود را با کنترل بیشتری در مقایسه با راهحلهای میزبانی مشترک راهاندازی کنند.
قابل تنظیم
اگرچه وردپرس را میتوان بر روی یک سرور مایکروسافت اجراء کرد اما اکثر توسعهدهندگان وبسایت اوبونتو را برای دستگاههای خود ترجیح میدهند. با Ubuntu CLI، سطوح سفارشیسازی باورنکردنی هم در مورد نحوه کنترل و مدیریت سایت خود و هم عملکرد داخلی یا باطن آن دارید.
اوبونتو برای توسعه ایدهآل است
برخلاف یک پنجره تمیز که کاربر را ملزم به نصب مجموعه آفیس مایکروسافت، جاوا، پایتون و یک ویرایشگر متن روی دسکتاپ یا رایانه یا هر چیز دیگری میکند نصب تمیز اوبونتو کار را بسیار سریعتر و آسانتر میکند. این با ویژگیهای متمایز پشتیبانی از جعبه طراحی شده است. از دستور apt-get برای دانلود سریع هرآنچه که نیاز دارید با یک خط کد از بسیاری از مخازن اوبونتو استفاده کنید.
حتی با وجود اینکه ویندوز به دلیل توانایی کاربر قادر به انجام چند کار آسان با کمک رابط کاربری گرافیکی، بسیار موردتوجه بوده اما مزایای انتخاب اوبونتو بیشتر از آن است زیرا به کاربر در صرفهجویی در زمان کمک میکند. هنگامی که به CLI عادت کردید میتوانید کارآمدتر و سریعتر توسعه دهید درحالیکه استفاده از منابع سرور را به حداقل برسانید.
مستندات گسترده
ماهیت منبعباز اوبونتو همان مزیت وردپرس را ارائه میدهد و به طور باورنکردنی مستند شده است. به هر چیزی که ممکن است نیاز داشته باشید بهاحتمال زیاد کسی در مورد آن آموزشی تهیه کرده است. کاربران جدید متوجه خواهند شد که موتور جستجوی انتخابی آنها با راهاندازی وبسایت خود بهترین دوست جدید آنها خواهد شد.
بهروزرسانی آسان
اوبونتو نرمافزار پسزمینه را بدون ایجاد اختلال در اجرای پروژه بهروز میکند. به همین دلیل، میلیونها نفر آن را به ویندوز ترجیح میدهند که نیاز به راهاندازی مجدد موتور در حین بهروزرسانی دارد. اگر یک آپدیت را اجرا میکنید (بهعنوانمثال: از اوبونتو 18.04.03 تا 18.04.04) بهروزرسانی سریع، آسان خواهد بود و سایت شما را مختل نمیکند. بهروزرسانیها نیز بسیار سبکتر هستند.