در این مقاله چگونگی نصب وردپرس بر روی سیستم عامل اوبونتو و سرورهای مجازی و ابری آموزش داده می شود. برای نصب و راه اندازی وردپرس بر روی لینوکس نیاز به راه اندازی استکی به نام LAMP داریم که مخفف سیستم های MySQL ،Apache ،Linux و PHP است. از قسمت آموزش های وبسابت مبناکلود، نحوه راه اندازی (Apache ،MySQL و PHP) را مشاهده نمایید و پس از آن برای پیکربندی دیتابیس از دستورات زیر استفاده نمایید.
نصب وردپرس
ابتدا باید یک دیتابیس جدید برای وردپرس در MySQL ایجاد کنید، در مرحله اول با دستور زیر وارد MySQL شوید.
mysql -u root -p # |
سپس به کمک این دستور یک دیتابیس ایجاد نمایید.
mysql> CREATE DATABASE wordpress DEFAULT CHARACTER ;SET utf8 COLLATE utf8_unicode_ci |
پس از آن باید یک نام کاربری جدید در دیتابیس برای WordPress ایجاد شود.به جای کلمه “password“ گذرواژه دلخواه خود را قرار دهید.
mysql> CREATE USER ‘wordpressuser’@’%’ IDENTIFIED WITH mysql_native_password BY ;’password’ |
سپس دسترسی لازم را با دستور زیر به این نام کاربری می دهیم.
mysql> GRANT ALL ON wordpress.*TO ‘wordpress’@’%’S ;mysql> FLUSH PRIVILEGES ;mysql> EXIT |
برای کار با وردپرس نیاز به نصب ماژول های زیر از PHP داریم. بنابراین چنان چه هر کدام از این ماژول ها روی سیستم نصب نیستند، به کمک دستور زیر اقدام به نصب آنها نمایید.
sudo apt install php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip # |
پس از نصب این ماژول ها نیاز است تا یک بار دیگر سرویس Apache مجددا راه اندازی شود.
sudo systemctl restart apache2 # |
در ادامه نیاز است تا Apache را به گونه ای پیکربندی کنیم که بتوانیم از مزایا htaccess در کنترل فایل ها بهره مند شویم. از این رو فایل کانفیگ اصلی و بسایت خود را باز کنید، در صورتی که این فایل را ایجاد نکرده اید، می توانید از فایل پیش فرض Apache در مسیر زیر استفاده و تمام تنظیمات خود را در این فایل قرار دهید. همچنین برای فایل های وردپرس، ما از مسیر var/www/wordpress/ استفاده خواهیم کرد. بنابراین این مسیر را نیز ایجاد نمایید.
mkdir /var/www/wordpress # |
با ادیتور دلخواه این فایل را باز کنید. درصورتی که فایل کافیگ شخصی برای وبسایت خود دارید، آن فایل را باز نمایید.
sudo nano /etc/apache2/sites-available/000-default.conf # |
کانفیگ زیر را در داخل تگ <VirtualHost> اضافه کنید.
<VirtualHost *:80> . . . <Directory /var/www/wordpress/> AllowOverride All </Directory> . . . </VirtualHost> |
فایل را ذخیره و از آن خارج شوید. سپس باید mod_rewrite در Apache فعال شود.
sudo a2enmod rewrite # |
به کمک دستور زیر می توانید مطمئن شوید که مشکلی در فایل کانفیگ های شما وجود ندارد.
sudo apache2ctl configtest # |
پس از آن سرویس Apache را ریستارت نمایید.
sudo systemctl restart apache2 # |
در این مرحله می توانیم وردپرس را دانلود کنیم. به کمک دستورات زیر وردپرس را دانلود و از حالت فشرده خارج نمایید.
cd /tmp # |
curl -O https://wordpress.org/latest.tar.gz # |
tar xzvf latest.tar.gz # |
قبل از این که محتوای این دایرکتوری را به محل اصلی آن انتقال دهیم، می توانیم فایل و دایرکتوری هایی که وردپرس در آینده به آن ها نیاز دارد را ایجاد و سپس آن ها را انتقال دهیم.
# touch /tmp/wordpress/.htaccess |
# cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php |
# mkdir /tmp/wordpress/wp-content/upgrade |
حالا به کمک دستور زیر تمام فایل های این دایرکتوری را به محل نهایی آن ها انتقال دهید.
sudo cp -a /tmp/wordpress/. /var/www/wordpress # |
حالا در این مرحله شما می توانید وردپرس را پیکربندی کنید. در این مرحله نیاز است تا Ownership و Permission فایل ها را تعیین کنید.
sudo chown -R www-data:www-data /var/www/wordpress # |
به کمک این دستور permission تمام دایرکتوری ها را ست نمایید.
# sudo find /var/www/wordpress/ -type d -exec chmod 750 {} \; |
و به کمک این دستور permission تمام فایل ها را ست کنید.
# sudo find /var/www/wordpress/ -type f -exec chmod 640 {} \; |
در این مرحله باید میزان امنیت وردپرس را از طریق ست کردن Secret Keys تعیین کنید. از طریق اجرای دستور زیر مقادیری برای این Secret Keys ایجاد نمایید و به ھیچ عنوان از مقادیر خروجی زیر استفاده نکنید و حتما این مقادیر را به کمک دستور، تولید نمایید.
curl -s https://api.wordpress.org/secret-key/1.1/salt # Output define(‘AUTH_KEY’, ‘1jl/vqfs<XhdXoAPz9 DO NOT COPY THESE VALUES c_j{iwqD^<+c9.k<J@4H’); define(‘SECURE_AUTH_KEY’, ‘E2N-h2]Dcvp+aS/p7X DO NOT COPY THESE VALUES {Ka(f;rv?Pxf})CgLi-3′); define(‘LOGGED_IN_KEY’, ‘W(50,{W^,OPB%PB<JF DO NOT COPY THESE VALUES 2;y&,2m%3]R6DUth[;88′); define(‘NONCE_KEY’, ‘ll,4UC)7ua+8<!4VM+ DO NOT COPY THESE VALUES #`DXF+[$atzM7 o^-C7g’); define(‘AUTH_SALT’, ‘koMrurzOA+|L_lG}kf DO NOT COPY THESE VALUES 07VC*Lj*lD&?3w!BT#-‘); define(‘SECURE_AUTH_SALT’, ‘p32*p,]z%LZ+pAu:VY DO NOT COPY THESE VALUES C-?y+K0DK_+F|0h{!_xY’); define(‘LOGGED_IN_SALT’, ‘i^/G2W7!-1H2OQ+t$3 DO NOT COPY THESE VALUES t6**bRVFSD[Hi])-qS`|’); define(‘NONCE_SALT’, ‘Q6]U:K?j4L%Z]}h^q7 DO NOT COPY THESE VALUES 1% ^qUswWgn+6&xqHN&%’); |
مقادیر بالا را پس از تولید، کپی و در آیتم های متناظر، در فایل کانفیگ زیر وارد نمایید.
sudo nano /var/www/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’); |
… |
پس از آن باید مقادیر مربوط به ارتباط با دیتابیس را وارد نمایید.
sudo nano /var/www/wordpress/wp-config.php # |
مقادیر زیر را براساس اطلاعاتی که در بخش ساخت دیتابیس وارد کردید، در فایل زیر جایگذاری نمایید.
… // ** MySQL settings – You can get this info from your web host ** // /** The name of the database for WordPress */ define(‘DB_NAME’, ‘wordpress’ ); /** MySQL database username */ define( ‘DB_USER’, ‘wordpressuser’ ); /** MySQL database password */ define( ‘DB_PASSWORD’, ‘password’ ); /** MySQL hostname */ define( ‘DB_HOST’, ‘localhost’ ); /** Database Charset to use in creating database tables. */ define( ‘DB_CHARSET’, ‘utf8’ ); /** The Database Collate type. Don’t change this if in doubt. */ define( ‘DB_COLLATE’, ” ); … define(‘FS_METHOD’, ‘direct’); |
در این مرحله پیکربندی سرویس به پایان رسیده و باید ادامه مراحل را از طریق web پیگیری نمایید. در یک مرورگر IP سرور خود و یا در صورتی که رکورد DNS کرده اید، نام دامین خود را وارد نمایید.
https://server_domain_or_IP |
راه اندازی وردپرس
در این بخش زبان مورد نظر را انتخاب نمایید.
در مرحله بعدی اطلاعات وبسایت خود به همراه نام کاربری پنل مدیریت آن را وارد کنید. پیشنهاد می شود برای امنیت بیشتر از انتخاب نام های متداولی مانند admin و root خودداری کنید.
در مرحله بعدی، نصب به پایان رسیده و با نام کاربری که انتخاب کردید می توانید به پنل وارد شوید.