دانش محور دستورالعمل های ساده برای کار با سرویس Profitserver
اصلی دانش محور نحوه پیکربندی وب سرور (Apache-PHP-MySQL/MariaDB) در لینوکس

نحوه پیکربندی وب سرور (Apache-PHP-MySQL/MariaDB) در لینوکس


در این مقاله، دستورالعمل های گام به گام نحوه پیکربندی محیط وب در سروری که لینوکس را اجرا می کند، به شما ارائه می دهیم. اول از همه، باید بدانید که یک وب سرور معمولی از چند جزء متقابل تشکیل شده است:

  • سرور HTTP
  • مترجم زبان برنامه نویسی
  • سیستم مدیریت پایگاه داده (DBMS)

برای مدیریت وب سایت خود همچنین باید یک سیستم مدیریت محتوا (CMS)، یک رابط وب برای مدیریت پایگاه داده و دسترسی FTP راه اندازی کنید.

بیایید راه اندازی یک پیکربندی بسیار محبوب Apache-PHP-MySQL (MariaDB) در لینوکس را در نظر بگیریم. ما همچنین سرور vsftpd ftp، phpMyAdmin - یک رابط وب برای مدیریت پایگاه داده، و یک سیستم مدیریت محتوا وردپرس را نصب خواهیم کرد.

برای شروع لطفا سفارش سرور VPS or سرور اختصاصی. به عنوان مثال ما از یک سرور مجازی با آدرس IP استاتیک که سرور اوبونتو 18.04 را اجرا می کند استفاده کردیم. تمام دستورات توسط کاربر root اجرا شد.

پیکربندی سرور HTTP Apache

1. نصب و راه اندازی

apt install apache2

پس از اتمام نصب، یک مرورگر را باز کنید و بررسی کنید "http://[server's_ip_address]"

پیکربندی سرور HTTP Apache

اگر صفحه خوش آمدگویی مانند این را در تصویر بالا مشاهده کردید، به این معنی است که سرور HTTP شما کار می کند.

2. یک صفحه آزمایشی ایجاد کنید

دایرکتوری ریشه پیش فرض برای وب سایت است “/var/www/html”. این جایی است که می توانید صفحه خوش آمدگویی را که به تازگی مشاهده کرده اید پیدا کنید. بیایید یک دایرکتوری جداگانه ایجاد کنیم “/var/www/sites” برای میزبان مجازی و یک زیر پوشه “/var/www/sites/site1” با صفحه فهرست وب سایت آزمایشی شما.

cd /var/www/

mkdir -p sites/site1

echo "<H1>Welcome</H1>" > sites/site1/index.html

در نتیجه فایل “/var/www/sites/site1/index.html” باید فقط یک خط کد html داشته باشد:

<H1>Welcome</H1>

3. پیکربندی سرور آپاچی

فایل های پیکربندی وب سایت ها در داخل هستند “/etc/apache2/sites-available/” کاتالوگ بیایید یک فایل پیکربندی برای یک میزبان مجازی جدید ایجاد کنیم که پیکربندی پیش فرض را از فایل دریافت می کند «000-default.conf» به عنوان پایه

cd /etc/apache2/sites-available/

cp 000-default.conf site1.conf

باز کردن فایل “site1.conf” و تغییر "DocumentRoot" ویژگی مسیر وب سایت خود را به عنوان مقدار قرار دهید، بنابراین در مورد ما اینطور است “/var/www/sites/site1”

پیکربندی سرور آپاچی

در این مرحله ما نیازی به پیکربندی عملکرد همزمان چندین وب سایت نداریم، بنابراین می توانیم وب سایت پیش فرض را غیرفعال کنیم و سایت جدید را فعال کنیم. برای اعمال تغییرات، پیکربندی سرور را دوباره بارگیری کنید.

a2dissite 000-default

a2ensite site1

systemctl reload apache2

پیوند را باز کنید "http://[سرور _ip_address]" دوباره و مطمئن شوید که به جای صفحه خوش آمدگویی پیش فرض، صفحه جدید خود را داریم.

پیکربندی سرور آپاچی

ما پیکربندی سرور HTTP خود را به پایان رساندیم و می‌توانیم به مرحله بعدی برویم.

پیکربندی سرور FTP

1. نصب و راه اندازی

بیایید سرور ftp خود و یک بسته اضافی را نصب کنیم “db-util”، که باید کاربران مجازی را پیکربندی کنیم

apt install vsftpd db-util

2. ایجاد حساب محلی

سرور vsftpd به ما اجازه می دهد تا مجوزهای دسترسی را به روشی بسیار انعطاف پذیر پیکربندی کنیم. برای وظایف خود باید موارد زیر را در اختیار کاربران ftp قرار دهیم:

  • دسترسی کامل به محتویات “/var/www/sites/”;
  • تمام موارد بالا را غیرفعال کنید “/var/www/”;
  • ارتباط با حساب مجازی؛

یک حساب محلی ایجاد کنید "مجازی" بدون مجوز ورود اما با دسترسی به پوشه خانه “/var/www/”. این حساب توسط کاربران ftp برای اتصال به سرور استفاده خواهد شد

useradd -d /var/www virtual

"ریشه" مالک خواهد بود “/var/www” پوشه به صورت پیش فرض برای اینکه کاربران ftp بتوانند محتویات وب سایت ها را تغییر دهند، اجازه دهید مالک آن را تغییر دهیم “/var/www/sites/” از جمله زیر پوشه های "مجازی".

chown -R virtual:root /var/www/sites

در نتیجه کاربر "مجازی" قادر به دیدن محتویات خواهد بود “/var/www/” و در آن بنویسید “/var/www/sites/” زیر پوشه

3. پیکر بندی

پیکربندی اصلی در فایل است “/etc/vsftpd.conf”، پس بیایید آن را باز کرده و به صورت زیر ویرایش کنیم:

#enable virtual users

anonymous_enable=NO

local_enable=YES

guest_enable=YES

guest_username=virtual
#configure permission

write_enable=YES

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

anon_world_readable_only=NO

anon_umask=0022

chroot_local_user=YES
#launch settings

listen=YES

pasv_min_port=30000

pasv_max_port=30999

4. پایگاه داده را ایجاد کنید

برای ذخیره داده های حساب های مجازی به یک پایگاه داده نیاز دارید.

ابتدا بیایید یک فایل متنی ساده ایجاد کنیم “users.txt” در پوشه home و جزئیات دسترسی (ورود و رمز عبور) کاربران مجازی را در هر خط دیگر ذخیره کنید. به عنوان مثال، ما به یک کاربر مجازی با لاگین نیاز داریم "ftp" و رمز عبور “Qwe123”. سپس فایل به شکل زیر در می آید:

ftp

Qwe123

بیایید پایگاه داده را ایجاد کنیم

db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db

بیایید فایل PAM پیش فرض را اصلاح کنیم “/etc/pam.d/vsftp” به شرح زیر است:

auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login

account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login

لطفا توجه داشته باشید که مسیر از “pam_userdb.so” کتابخانه ممکن است متفاوت باشد اما در صورت نیاز می توانید آن را تغییر دهید.

برای اعمال تغییرات، سرور vsftpd را دوباره بارگیری کنید.

systemctl restart vsftpd

پیکربندی سرور FTP را به پایان رساندیم.

جزئیات اتصال:

  • ftp://[server's_ip_address]
  • ورود به سیستم: ftp
  • رمز عبور: Qwe123

پیکربندی سرور PHP

1. نصب PHP

امروز آخرین نسخه پایدار PHP php 7.4.5 است که در مخازن رسمی اوبونتو گنجانده نشده است. بیایید یک مخزن شخص ثالث را متصل کنیم و آخرین نسخه PHP را نصب کنیم.

apt update

apt install software-properties-common

add-apt-repository ppa:ondrej/php

apt update

apt install php7.4

2. بررسی کنید

برای اینکه PHP اجرا شود باید فایل صفحه وب داشته باشد “.php” پسوند. بیایید نام صفحه آزمایشی خود را تغییر دهیم:

cd /var/www/sites/site1/

mv index.html index.php

خط php زیر را به فایل اضافه کنید “/var/www/sites/site1/index.php”، بنابراین فایل باید به شکل زیر باشد:

<H1>Welcome</H1>

<?php

phpinfo();

?>

تغییرات را ذخیره کنید و نتیجه را در مرورگر بررسی کنید.

پیکربندی سرور PHP - نصب و بررسی

اگر نتیجه عملکرد را مشاهده کردید “phpinfo()”، مفسر PHP به درستی کار می کند. حالا بیایید به مرحله بعدی برویم.

پیکربندی MySQL (MariaDB).

1. نصب و راه اندازی

بیایید MariaDB و یک ماژول PHP را برای MySQL نصب کنیم و سپس آپاچی را دوباره بارگذاری کنیم.

apt install mariadb-server php-mysql

systemctl restart apache2

صفحه تست را رفرش کنید و به قسمت PDO در جدول تنظیمات PHP بروید. اگر می توانید بخش را پیدا کنید "PDO_mysql"، یعنی درایور Mysql به درستی نصب شده است.

نصب و پیکربندی MySQL (MariaDB).

سپس باید پیکربندی امنیتی اولیه MariaDB را انجام دهیم و رمز عبور آن را تنظیم کنیم "ریشه" کاربر، دسترسی از راه دور را غیرفعال کنید و تمام حساب های مهمان را حذف کنید.

mysql_secure_installation

در مرحله اول باید وارد "ریشه" رمز عبور کاربر برای دسترسی به DBMS یا اگر رمز عبور وجود ندارد Enter را فشار دهید. از آنجایی که هیچ رمز عبوری برای آن تنظیم نشده است "ریشه" کاربر پس از نصب، فقط فشار دهید "وارد".

لطفاً توجه داشته باشید که در MariaDB قبلاً حساب های خود وجود دارد که هیچ ارتباطی با حساب های سیستم عامل ندارند. بنابراین تنها کاربری که در MariaDB با آن سر و کار داریم همین است "ریشه".

  MySQL: ایجاد حساب کاربری و تنظیم رمز عبور

پس از آن، پیکربندی از ما می خواهد که رمز عبور را برای کاربر root تعیین کنیم. تایپ کنید "Y" برای تایید و وارد کردن رمز عبور جدید. در مورد ما، این است “Qwe123”

  MySQL: ایجاد حساب کاربری و تنظیم رمز عبور

پاسخ "Y" به بقیه سوالات تا آخر

پیکربندی انجام شد!

جزئیات دسترسی MariaDB:

  • ورود: ریشه
  • رمز عبور: Qwe123

پیکربندی phpMyAdmin

1. نصب و راه اندازی

بیایید پسوند لازم برای PHP را نصب کنیم - mbstring.

apt install php-mbstring

در مخزن رسمی فقط یک نسخه قدیمی از phpMyAdmin وجود دارد، بنابراین بیایید نسخه جدید را به صورت دستی نصب کنیم.

وب سایت رسمی پروژه را باز کنیدhttps://www.phpmyadmin.net/” و آخرین آرشیو را دانلود کنید.

نصب و پیکربندی phpMyAdmin

آرشیو را در سرور موجود در کپی کنید “/var/www/sites/” پوشه با استفاده از هر مشتری ftp.

پوشه را از آرشیو خارج کنید و نام آن را به آن تغییر دهید “phpMyAdmin”. فراموش نکنید که نصب کنید "باز کردن زیپ" سودمندی پس از اینکه بایگانی را از حالت آرشیو خارج کردید، می توانید آن را حذف کنید.

apt install unzip

cd /var/www/sites/

unzip phpMyAdmin-5.0.2-all-languages.zip

mv phpMyAdmin-5.0.2-all-languages phpMyAdmin

rm phpMyAdmin-5.0.2-all-languages.zip

پوشه زیر را ایجاد کنید “/var/www/sites/phpMyAdmin/tmp” برای فایل های موقت و فعال کردن دسترسی برای همه. اگر این کار را انجام ندهید، phpMyAdmin عدم دسترسی به پوشه موقت را گزارش می دهد.

cd /var/www/sites/phpMyAdmin/

mkdir tmp

chmod 777 tmp

2. یک نام مستعار ایجاد کنید

از آنجایی که phpMyAdmin یک میزبان مجازی مجزا نیست و خارج از دایرکتوری ریشه قرار دارد، اجازه دهید نام مستعار را پیکربندی کنیم.

باز کردن فایل “/etc/apache2/mods-available/alias.conf” و این خط را اضافه کنید:

Alias /pma “/var/www/sites/phpMyAdmin"

داخل این بخش:

<IfModule alias_module>

</IfModule>
phpMyAdmin: یک نام مستعار ایجاد کنید

برای اعمال تغییرات آپاچی را دوباره بارگیری کنید.

systemctl reload apache2

نام مستعار تنظیم شده است، بنابراین ما می توانیم از اینجا به phpMyAdmin دسترسی داشته باشیم "http://[server's_ip_address]/pma".

3 تهیه پایگاه داده

از آنجایی که استفاده از کاربر root را در طول پیکربندی اولیه MariaDB محدود کردیم، باید یک حساب کاربری جدید با تمام مجوزهایی که برای دسترسی به phpMyAdmin استفاده می شود ایجاد کنیم.

علاوه بر این، برای فعال کردن ویژگی‌های اضافی phpMyAdmin، به یک پایگاه داده سرویس و یک حساب کاربری برای دسترسی به آن نیاز داریم.

بیایید حساب ها را ایجاد کنیم

mariadb -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'pma'@'localhost' IDENTIFIED BY 'Qwe123' WITH GRANT OPTION;
GRANT SELECT, INSERT, UPDATE, DELETE ON `phpmyadmin`.* TO 'pmaservice'@'localhost' IDENTIFIED BY 'Qwe123' WITH grant option;
quit

لطفاً توجه داشته باشید که نام پایگاه داده در درخواست دوم در پشت جرقه های “… ON "phpmyadmin"..* به 'pma'@'localhost' شناسایی شده توسط …,

در نتیجه، دو حساب در MariaDB ایجاد می شود:

  • ورود: pma، رمز عبور: Qwe123Full دسترسی، برای ورود به phpMyAdmin استفاده خواهد شد
  • ورود به سیستم: pmaservice، رمز عبور: Qwe123حساب سرویس برای عملکرد ویژگی های اضافی مورد نیاز است

در مرحله بعد این جزئیات را در فایل پیکربندی قرار می دهیم "config.inc.php".

سپس باید پایگاه داده را از فایل وارد کنیم “phpMyAdmin/sql/create_tables.sql”.

بیایید آن را با کمک phpMyAdmin وارد کنیم.

پیوند را باز کنید "http://[server's_ip_address]/pma"

وارد شوید "pma" و رمز عبور “Qwe123”

رفتن به "وارد كردن"کلیک کنید "انتخاب فایل" و فایل را انتخاب کنید "sql/create_tables.sql" در دایرکتوری ریشه phpMyAdmin. قرار است این پوشه در رایانه شما باشد “phpMyAdmin” با فایل ها در صورت لزوم آن را از آرشیو خارج کنید.

پیکربندی phpmyadmin

کلیک کنید "بعد" برای شروع واردات

4. پیکر بندی

بیایید فایل پیکربندی را از قالب کپی کنیم

cd /var/www/sites/phpMyAdmin/

cp config.sample.inc.php config.inc.php

بیایید فایل پیکربندی را باز کنیم “/var/www/sites/phpMyAdmin/config.inc.php” و تغییرات زیر را انجام دهید:

یک مقدار تصادفی 32 نویسه ای برای ویژگی تعیین کنید «$cfg['blowfish_secret']». از هر تولید کننده رمز عبور برای آن استفاده کنید..

نحوه نصب و پیکربندی وردپرس بر روی سرور لینوکس

حذف نظر از تمام خطوط "تنظیمات ذخیره سازی پیکربندی phpMyAdmin" را بخش کنید و لاگین و رمز عبور حساب سرویس MariaDB را برای "کنترل کننده" و "کنترل پاس" بر این اساس صفات را مشخص می کند. در مورد ما، این است pmaservice و Qwe123.

نحوه نصب و پیکربندی وردپرس بر روی سرور لینوکس

تغییرات را ذخیره کنید.

دسترسی به جزئیات phpMyadmin:

  • http://[server’s_ip_address]/pma/
  • ورود به سیستم: pma
  • رمز عبور: Qwe123

نحوه نصب و پیکربندی وردپرس بر روی سرور لینوکس

1. بسته بندی وردپرس و قرار دادن فایل ها

به وب سایت رسمی WP برویدhttps://ru.wordpress.org/و آرشیو را در رایانه شخصی خود دانلود کنید.

آرشیو را در سرور آپلود کنید “/var/www/sites/” پوشه را از حالت آرشیو خارج کنید "وردپرس"پوشه

محتویات را کپی کنید “/var/www/sites/wordpress/” پوشه ریشه از “/var/www/sites/site1/” وب سایت.

از آنجایی که فایل‌ها را از طریق کنسول با مجوزهای روت کپی کردیم، اجازه دهید مالک آن را تغییر دهیم “/var/www/sites/” پوشه شامل محتویات "مجازی". این برای فعال کردن دسترسی کامل برای اتصال ftp از طریق مشتری لازم است.

cd /var/www/sites/

tar -xzvf wordpress-5.4-ru_RU.tar.gz

cp -R wordpress/* site1/

chown -R virtual:root /var/www/sites

2. یک پایگاه داده برای وردپرس ایجاد کنید

وارد phpMyAdmin شوید و روی «ایجاد پایگاه داده» کلیک کنید. یک نام پایگاه داده دلخواه، در مورد ما "wordpress_db" را مشخص کنید و روی دکمه "ایجاد" کلیک کنید.

ایجاد پایگاه داده برای وردپرس

پایگاه داده جدید را در قسمت سمت چپ انتخاب کرده و کلیک کنید "امتیازات"

ایجاد پایگاه داده برای وردپرس

سپس روی کلیک کنید "افزودن حساب کاربری".

ورود و رمز عبور را وارد کنید (wpservice / Qwe123) در پنجره باز شده تیک بزنید "اعطای تمام امتیازات در wordpress_db" کلیک کنید و "بعد"

اضافه کردن حساب کاربری در پایگاه داده برای وردپرس

در صفحه بعد کلیک کنید "لغو همه" برای بازنشانی تمام امتیازات در سطح پایگاه داده و کلیک کنید "بعد".

اضافه کردن حساب کاربری در پایگاه داده برای وردپرس

3. پیکربندی وردپرس در سرور لینوکس

به دایرکتوری اصلی وب سایت خود بروید و فایل پیکربندی را از قالب کپی کنید

cd /var/www/sites/site1/

cp wp-config-sample.php wp-config.php

باز کردن “wp-config.php” فایل را وارد کنید و پارامترهای اتصال پایگاه داده را که در مرحله قبل ایجاد کردیم وارد کنید و تغییرات را ذخیره کنید.

پیکربندی وردپرس در سرور لینوکس

4. CMS WordPress را نصب کنید

لینک زیر را در مرورگر باز کنید "http://[server's_ip_address]/wp-admin/install.php".

تمام فیلدها را پر کنید و کلیک کنید “نصب وردپرس”. یک نام کاربری و رمز عبور تصادفی تنظیم کنید. در مورد ما، این است wpadmin و Qwe123 بر این اساس.

این جزئیات برای دسترسی به وردپرس استفاده خواهد شد.

CMS WordPress را روی سرور لینوکس نصب کنید

پس از اتمام نصب، لینک را باز کنید "http://[server's_ip_address]/wp-login.php"، مشخصات دسترسی را وارد کرده و وارد وردپرس شوید.

CMS WordPress را روی سرور لینوکس نصب کنید

شما باید یکی از قالب های وردپرس را در صفحه اصلی ببینید.

CMS WordPress را روی سرور لینوکس نصب کنید

پیکربندی به پایان رسید.

جزئیات دسترسی به وردپرس:

  • http://[server’s_ip_address]/wp-login.php
  • ورود: wpadmin
  • رمز عبور: Qwe123
❮ مقاله قبلی پیکربندی فایل htaccess
مقاله بعدی ❯ فایل robots.txt

VPS را از ما بخواهید

ما همیشه آماده پاسخگویی به سوالات شما در هر ساعت از شبانه روز هستیم.