0 تا 100 راه اندازی وردپرس با nginx و ubuntu

درود، امیدوارم که حال دلتون عالی عالی باشه. من امیرعباس قاسمی هستم.در این مطلب قراره به موضوع راه اندازی وردپرس بر روی ابونتو با استفاده از وبسرور قدرتمند nginx بپردازیم.از اون جایی که انجام دادن این کار برای خودم یک چالش ایجاد کرد و مقابله با این چالش یک تجربه شیرین رو برای من به ارمغان آورد تصمیم گرفتم که اون رو با شما به اشتراک بگذارم.اصلا چرا nginx برای راه اندازی وردپرس؟از اونجایی که nginx یکی از قوی ترین وبسرور های جهان است که علاوه بر بستری ایده آل برای ارائه پروتکل rtmp بستری مناسب برای میزبانی درخواست های http است و قابلیت های جذابی مثل سیستم کشینگ پیشرفته، لاگ های حرفه ای و پر جزئیات، تنظیماتی روان و کلی چیز های جذاب دیگه به علاوه قرار داشتن در بین بهترین ها و محبوب ترین وب سرور ها گزینه عالی ای برای راه اندازی وردپرس هست.شروع راه اندازی وردپرس :خب حرف بسه بریم سراغ کار عملی. آماده اید؟ من که پرقدرت آماده ام.مرحله اول راه اندازی وردپرس - بروزرسانی پکیج های ابونتوبرای بروز بودن کامند های زیر رو به ترتیب اجرا کنید.sudo apt-get update sudo apt-get upgradeمرحله دوم - دانلود وردپرسبرای شروع با کامند زیر یک پوشه در روت اصلی کاربرمون می سازیم :cd ~ wget https://wordpress.org/latest.zip sudo apt install unzip unzip latest.zip mv latest wordpress chown -R www-data:www-data wordpressخب حالا داخل مسیر اصلی کاربرمون یک پوشه داریم تحت عنوان wordpress که روت اصلی وبسایتمونه.مرحله سوم - نصب و کانفینگ nginxنصب nginx خیلی پیچیدگی خاصی نداره و کافیه این کامند رو اجرا کنید.sudo apt install nginxحالا برای کانفیگ کافیه فایل کانفینگ رو با استفاده از کامند زیر باز کنید.sudo nano /etc/nginx/sites-enabled/defaultو محتویات درونش رو به متن زیر تغییر دهید. و با استفاده از CRT+X + CRT+Y فایل رو ذخیره کنید.به جای your_user در متن زیر نام کاربری که وردپرس رو در اون دانلود کردیم و به جای your_host دامنه وبسایت خودتون رو جایگزین کنید.نکتهserver { listen 80; server_name your_host; root /home/your_user/wordpress; index index.php index.html index.htm index.nginx-debian.html; location / { add_header Access-Control-Allow-Origin &quot*" try_files $uri $uri/ /index.php?$args; } location ~* /wp-sitemap.*\.xml { add_header Access-Control-Allow-Origin &quot*" try_files $uri $uri/ /index.php$is_args$args; } client_max_body_size 100M; location ~ \.php$ { add_header Access-Control-Allow-Origin &quot*" fastcgi_pass unix:/run/php/php8.1-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; include snippets/fastcgi-php.conf; fastcgi_buffer_size 128k; fastcgi_buffers 4 128k; fastcgi_intercept_errors on; } gzip on; gzip_comp_level 6; gzip_min_length 1000; gzip_proxied any;مرحله چهارم - نصب و کانفینگ MySQL gzip_disable &quotmsie6" gzip_types application/atom+xml application/geo+json application/javascript application/x-javascript application/json application/ld+json application/manifest+json application/rdf+xml application/rss+xml application/xhtml+xml application/xml font/eot font/otf font/ttf image/svg+xml text/css text/javascript text/plain text/xml; # assets, media location ~* \.(?:css(\.map)?|js(\.map)?|jpe?g|png|gif|ico|cur|heic|webp|tiff?|mp3|m4a|aac|ogg|midi?|wav|mp4|mov|webm|mpe?g|avi|ogv|flv|wmv)$ { expires 90d; add_header Access-Control-Allow-Origin &quot*" access_log off; } # svg, fonts location ~* \.(?:svgz?|ttf|ttc|otf|eot|woff2?)$ { add_header Access-Control-Allow-Origin &quot*" expires 90d; access_log off; } location ~ /\.ht { add_header Access-Control-Allow-Origin &quot*" access_log off; log_not_found off; deny all; } }در نهایت هم باید nginx رو از اول راه اندازی کنیم ولی قبل از اون باید با کامند زیر چک کنیم تا مطمعن شویم همه چیز اوکی هست یا نه.sudo nginx -tاگر همه چیز امن و آمان بود و نتیجه تست بالا هم مثبت بود،‌ کامند زیر رو اجرا می کنیم.sudo systemctl restart nginxمرحله چهارم - نصب و کانفینگ MySQLهمونطور که میدونید پایگاه داده مورد استفاده وردپرس MySQL هست،‌ پس بریم که نصبش کنیم!کافیه کامند زیر رو اجرا کنی تا سرویس MySQL نصب بشه.sudo apt install mysql-serverحالا باید جداول و کاربرانمون رو بسازیم،‌ برای این کار باید با کامند زیر وارد کامندلاین mysql بشیم.sudo mysql -u rootبعد از اینکه وارد کامندلاین mysql شدیم،‌ ابتداً جدول خودمون رو ایجاد می کنیم.CREATE DATABASE wordpress;و بعد از اون کاربر خودمون رو می سازیم و دسترسی های لازم رو بهش می دیم.CREATE USER 'username'@'localhost' IDENTIFIED BY 'password'; GRANT PRIVILEGE ON *.* TO 'username'@'host';مرحله پنجم و مرحله نهایی راه اندازی وردپرس - کانفیگ وردپرسرسیدم به مرحله آخر. خسته که نشدید؟خوب برای ادامه راه کافیه آدرس سرور (http://your_ip و یا http://your_host) رو داخل مرورگرت وارد کنی و بعد به صفحه ای مطابق شکل زیر منتقل میشویم که در این مرحله نیاز به تنظیمات خاصی نیست فقط کافی است روی دکمه “بزن بریم” یا “lets go” کلیک کنید تا به مرحله بعدی بروید.خب داخل مرحله اول تنظیمات وردپرس مطابق زیر از ما اطلاعات دیتابیسمون که داخل مرحله چهارم تنظیم کردیم رو می خواد.خوب خیلی عالیه،‌ حالا اگر پیامی مطابق با عکس زیر دریافت کردیم به این معنیه که وبسایت ما به دیتابیسمون متصل شده!بعد از اینکه بر روی اجرای نصب کلیک کردید نوبت به اطلاعات تکمیلی وبسایت می رسه که مطابق با تصویر زیر اوکی می کنیم.تمام!‌ حالا کار ما داخل راه اندازی وردپرس تموم شده و امیدوارم از وبسایت وردپرسی خود لذت ببرید.