برای مدیریت سایت خود بر روی یک سرور محلی ، باید بسیاری از اجزای اضافی را نصب کنید ، که یک سیستم واحد را سازماندهی می کنند که عملکرد روان و بدون خطایی دارد. یکی از اجزای اصلی چنین ساختاری را می توان وب سرور دانست. بیشتر اوقات کاربران به دلیل سادگی و انعطاف پذیری پیکربندی و همچنین قابلیت اتصال ماژول های خارجی ، ترجیح می دهند از Apache استفاده کنند. با این حال ، نصب و پیکربندی اساسی یک فرایند سریع نیست و برای برخی حتی دشوار است ، بنابراین ما می خواهیم در این مورد با جزئیات بیشتر با توزیع CentOS 7 به عنوان مثال صحبت کنیم.
Apache را روی CentOS 7 نصب کنید
ساختار مقاله امروز مرحله به مرحله خواهد بود تا حتی تازه کارترین کاربر دقیقاً نحوه نصب و آماده سازی وب سرور مورد نظر را بفهمد. بی درنگ روشن کنیم که ما راهنمایی برای پیکربندی دقیق Apache ارائه نمی دهیم ، زیرا این امر به تنظیمات شخصی کاربر و سایر اجزای مهم موجود بستگی دارد. برای این اطلاعات ، ما همیشه توصیه می کنیم به اسناد رسمی مراجعه کنید.
مرحله 1: آماده سازی و نصب
بیایید بلافاصله با نصب اجزای Apache و اضافه کردن همه خدمات پشتیبانی شروع کنیم. ما پیشنهاد می کنیم از مخزن توزیع برای این امر استفاده کنید ، زیرا آخرین نسخه پایدار نرم افزار همیشه در آنجا بارگذاری می شود و روند نصب به خودی خود زمان زیادی نمی برد.
- اجرا کن "پایانه"، به عنوان مثال ، از طریق نماد موجود در بخش موارد دلخواه.
- اگر قبلاً Apache را روی رایانه خود نصب کرده اید یا به طور تصادفی یکی از اجزای آن را حذف کرده اید ، فقط از دستور استفاده کنید
به روز رسانی sudo yum httpd
با فعال کردن آن با فشار دادن کلید وارد. - این عمل از طرف مدیر فوق العاده انجام می شود ، بدین معنی که شما باید با تعیین رمز ورود برای این حساب آن را تأیید کنید.
- در صورت نصب به روزرسانی ، این مورد به شما اطلاع داده می شود و در صورت عدم وجود بسته ، پیام دیگری از نوع مربوطه ظاهر می شود.
- حال بیایید در مورد نصب Apache از ابتدا صحبت کنیم. همانطور که گفتیم ، ما از مخازن رسمی برای این کار استفاده خواهیم کرد ، بنابراین ، شما باید دستور را وارد کنید
sudo yum نصب httpd
. - وقتی اعلانی در مورد نصب بسته ظاهر شد ، با انتخاب گزینه آن را تأیید کنید بله.
- منتظر بمانید تا نصب به پایان برسد ، در این مدت جلسه ترمینال فعلی را بسته نکنید تا روند کار قطع نشود.
- پس از اتمام ، بلافاصله توصیه می شود وب سرور را راه اندازی کنید ، که می تواند از طریق آن انجام شود
sudo systemctl شروع httpd
. - وضعیت فعلی را از طریق بررسی کنید
وضعیت sudo systemctl httpd
. - اطلاع "فعال: فعال (در حال اجرا)" به این معنی است که اکنون Apache به درستی کار می کند و می توانید به پیکربندی بیشتر آن ادامه دهید.
این تنها چیزی بود که باید در مورد روش اصلی نصب سرور وب بدانیم. همانطور که می بینید ، هیچ چیز پیچیده ای در این مورد وجود ندارد. در مرحله بعدی ، ما می خواهیم در مورد تعامل با سرویس های اصلی و تنظیم پیکربندی اساسی صحبت کنیم ، و این برای شما باقی می ماند که تصمیم بگیرید آیا باید این دستورالعمل ها را مطالعه کنید یا قبلاً از پیکربندی و مدیریت اطلاعاتی دارید.
مرحله 2: مدیریت سرویس Apache
وب سرور در CentOS ، مانند سایر توزیع ها ، به عنوان یک سرویس در پس زمینه اجرا می شود. به طور پیش فرض ، آن به شروع کار اضافه می شود و ما قبلاً در مورد فعال سازی و بررسی وضعیت زودتر صحبت کردیم. اگر تمایل به مدیریت این ابزار دارید ، این کار به صورت زیر انجام می شود:
- وارد
sudo systemctl توقف httpd
برای جلوگیری از آپاچی به طور کامل. - این دستور و همه دستورات بعدی از طرف مدیر کاربر اجرا می شود ، بنابراین باید آن را با وارد کردن رمز ورود مناسب تأیید کنید.
- راه اندازی مجدد از طریق دستور انجام می شود
sudo systemctl راه اندازی مجدد httpd
... این دستور در شرایطی مرتبط است که سرور به دلیل ویژگیهای تعامل با سایر م componentsلفهها خراب شده یا نیاز به راه اندازی مجدد دارد. - استفاده کنید
sudo systemctl httpd را بارگیری مجدد کنید
اگر می خواهید همه تغییرات ایجاد شده پس از پیکربندی بدون قطع هیچ یک از اتصالات اعمال شود. - فرمان دادن
sudo systemctl httpd را غیرفعال کنید
Apache را از راه اندازی حذف می کند ، وsudo systemctl httpd را فعال می کند
حالت استاندارد را برمی گرداند. علاوه بر این ، هنگامی که این گزینه فعال باشد ، در مورد ایجاد یک پیوند نمادین جدید مسئول این پارامتر به شما اطلاع داده می شود.
همانطور که مشاهده می کنید ، استانداردترین دستورات وضعیت سرویس را کنترل می کنند. یادآوری آنها کار دشواری نخواهد بود اگر در مدیریت شبکه ، سایت جداگانه یا برنامه های کاربردی اغلب مجبور شوید به چنین اقداماتی متوسل شوید.
مرحله 3: پیکربندی اساسی
پیکربندی اساسی شامل راه اندازی یک میزبان مجازی است که برای جدا کردن تنظیمات و میزبانی دامنه های مختلف در یک سرور مفید است. اگر فقط با یک سایت سر و کار دارید ، یک میزبان استاندارد مجازی کافی است ، اما هنگام ثبت دامنه های دیگر ، باید به ایجاد پارامترهای اضافی متوسل شوید. اکنون ما یک میزبان مجازی استاندارد را مثال می زنیم و در صورت نیاز آدرس آن را تغییر می دهید.
- بیایید با ایجاد یک فهرست شروع کنیم که تمام پرونده های کودک میزبان مجازی در آن ذخیره می شود. این کار از طریق دستور انجام می شود
sudo mkdir -p /var/www/example.com/html
. - یک پوشه اضافی نیز مورد نیاز است ، جایی که گزارش های رویداد به طور خودکار ذخیره می شوند. برای افزودن آن ، وارد شوید
sudo mkdir -p /var/www/example.com/log
. - مجوزهای پیش فرض را از طریق تنظیمات روی فهرست تنظیم کنید
sudo chown -R $ USER: $ USER /var/www/example.com/html
. - علاوه بر این با قرار دادن امتیازات و امتیازات برای هر کاربر
sudo chmod -R 755 / var / www
. - بیایید شروع به ایجاد یک نمونه صفحه اصلی کنیم که هنگام بررسی سلامت میزبان نمایش داده می شود. یک فایل متنی جدید از طریق یک ویرایشگر مناسب ایجاد کنید ، به عنوان مثال ، با استفاده از nano ، باید وارد کنید
sudo nano /var/www/example.com/html/index.html
. - وقتی ویرایشگر متن را باز می کنید ، به شما اطلاع داده می شود که این یک پرونده جدید است. نگران نباشید ، این باید چگونه باشد. ما آن را به عمد با تنظیم پیکربندی مناسب ایجاد می کنیم.
- کد زیر را در آنجا جای گذاری کنید ، و متن را به جای تبریک استاندارد قرار دهید. در صورت تمایل می توانید با ایجاد صفحه مناسب خود ، ساختار را کاملاً از نو طراحی کنید.
<html>
<head>
<title>Welcome to Example.com!</title>
</head>
<body>
<h1>Success! The example.com virtual host is working!</h1>
</body>
</html></code>
- با کلیک بر روی تغییرات ذخیره کنید Ctrl + Oو سپس از طریق ویرایشگر متن را ترک کنید Ctrl + X.
- این فقط تنظیمات اولیه بود. حال به سراغ خود میزبان مجازی می رویم: ابتدا باید پوشه ها را برای ذخیره سازی آن مشخص کنید. برای این کار وارد شوید
sudo mkdir / etc / httpd / sites-available / etc / httpd / sites-enabled
. - پس از آن ، به سرور وب بگویید که اکنون باید با سایر ملفه ها ارتباط برقرار کند. این کار با ویرایش فایل پیکربندی اصلی انجام می شود. با مشخص کردن ، آن را از طریق ویرایشگر متن اجرا کنید
sudo nano /etc/httpd/conf/httpd.conf
. - به پایین لیست رفته و خط را وارد کنید
سایت های اختیاری را فعال کنید / *
. - به یاد داشته باشید قبل از خروج از ویرایشگر متن ، تمام تغییرات خود را ذخیره کنید.
- برای ایجاد خود میزبان مجازی ، به یک فایل پیکربندی دیگر نیاز دارید. ایجاد آن از طریق
sudo nano /etc/httpd/sites-available/example.com.conf
. - محتوای زیر را در آنجا جای گذاری کنید و خطوط مورد نیاز خود را جایگزین کنید.
نام سرور www.example.com
ServerAlias example.com
DocumentRoot /var/www/example.com/html
ErrorLog /var/www/example.com/log/error.log
CustomLog /var/www/example.com/log/requests.log به صورت ترکیبی
- فقط فعال سازی پرونده با ایجاد یک پیوند نمادین از طریق آن باقی مانده است
sudo ln -s /etc/httpd/sites-available/example.com.conf /etc/httpd/sites-enabled/example.com.conf
.
مرحله 4: پیکربندی کنترل دسترسی
اگر ما در مورد پیکربندی پارامترهای جهانی صحبت می کنیم ، ارائه کنترل دسترسی با مشخص کردن تعدادی از کاربران که قادر به ایجاد تغییر در فهرست های قبلی هستند ، ضروری است. این روش با استفاده از ابزار استاندارد SELinux که مسئول مدیریت سطوح دسترسی است انجام می شود.
- تنظیم امنیت جهانی از طریق
sudo setsebool -P httpd_unified 1
... این اطمینان حاصل می کند که انواع پردازش ها به صورت یکسان انجام می شوند. - در مرحله بعدی ، توصیه می شود گزینه های فعلی SELinux را که به طور خودکار ارائه شده اند بررسی کنید. برای این کار بنویسید
sudo ls -dZ /var/www/example.com/log/
. - در نتیجه ، محتوا را مشاهده خواهید کرد drwxr-xr-x. ریشه ریشه unconfined_u: object_r: httpd_sys_content_t: s0 /var/www/example.com/log/... این بدان معناست که اکنون Apache فقط می تواند آن دسته از پرونده هایی را که در پوشه نصب شده ایجاد شده بخواند ، شما باید پیکربندی را تغییر دهید.
- این وظیفه از طریق انجام می شود
sudo semanage fcontext -a -t httpd_log_t "/var/www/example.com/log(/.*)؟"
. - تغییرات خود را ذخیره کرده و پس از راه اندازی مجدد سرور ، با تایپ کردن ، آنها را اعمال کنید
sudo restorecon -R -v /var/www/example.com/log
. - اکنون دوباره تغییرات خود را از طریق بررسی کنید
sudo ls -dZ /var/www/example.com/log/
. - همانطور که مشاهده می کنید ، خروجی حاصل از فرم است drwxr-xr-x. ریشه ریشه unconfined_u: object_r: httpd_log_t: s0 /var/www/example.com/log، بنابراین ، همه چیز درست است.
- فقط آزمایش همه تغییرات باقی مانده است. برای این کار وارد شوید
sudo systemctl راه اندازی مجدد httpd
و کلیک کنید وارد. - اقدام را با رمز عبور کاربر فوق تأیید کنید.
- با تایپ مجدداً یک درخواست کاتالوگ ایجاد کنید
ls -lZ /var/www/example.com/log
... اگر محتوایی که ظاهر می شود در قالب باشد-rw-r - r--. 1 ریشه ریشه خطا. log -rw-r - r--. 1 ریشه 0 ریشه
، این بدان معناست که تمام تنظیمات قبلی به درستی انجام شده اند.
شما با روش نصب و پیکربندی کلی وب سرور Apache در CentOS 7 آشنا بودید. همانطور که مشاهده می کنید ، نصب خود زمان زیادی نمی برد و تمام مشکلات فقط به پیکربندی مربوط می شوند. اگر راهنمای ارائه شده در مورد تغییر پارامترها و مدیریت Apache برای شما کافی نبود ، توصیه می کنیم اسناد رسمی را با استفاده از لینک زیر مطالعه کنید.