راه اندازی سرور apache در سیستم عامل CentOs

سلامتوی این مقاله قراره در مورد راه اندازی سرور apache در سیستم عامل CentOs و یه سری تنظیمات مربوط به این وب سرور صحبت کنیم. سیستم عامل ما CentOs 8 هستش و وب سرور apache می باشد. بعد از نصب سیستم عامل مراحل زیر نیاز است تا شما بتوانید یک وب سرور apache روی سرور خود راه اندازی کنید.نصب وب سروردر ریپازیتوری های مربوطه به Cantos وب سرور Apache با نام httpd شناخته می شود برای همین برای نصب باید از دستور زیر استفاده کنید:$ sudo dnf install httpdبا همین دستور ساده وب سرور Apache روی سرور شما نصب می شود و یک صفحه html به صورت آزمایش بر روی وب سرور شما قرار می گیرد ولی ممکن است شما از بیرون سرور نتوانید به این ضفحه دسترسی پیدا کنید برای همین موضوع شما باید دیواره آتش خودتان رو طوری تنظیم کنید تا اجازه دسترسی به وب سرور داخلی شما از بیرون را بدهد.دستور زیر به دیواره آتش شما اعلام می کند که اجازه ورود و خرووج اطلاعات از طریق پورت مربوط به http را بدهد:$ sudo firewall-cmd --permanent --zone=public --add-service=httpهمچنین اگر می خواهید از رمز نگاری ssl در سرور خود استفاده کنید باید پورت مخصوص به https را نیز باز کنید که از طریق دستور زیر امکان پذیر می باشد:$ sudo firewall-cmd --permanent --zone=public --add-service=httpsدر ادامه در مورد راه اندازی پروتوکل https بیشتر صحبت می کنیم.تنظیمات مربوط به سایتدر وب سرور apache شما می تواند چند سایت به صورت همزمان داشته باشید. به این صورت که هر کدام به صورت مستقل فعالیت کرده و تنها هاست یکسانی دارند.در قسمت /var/www/ شما می تواند پوشه های مختلف ایجاد کنید و در هر یک از این پوشه ها فایل های مربوط به سایت خود را قرار دهید.همچنین در پوشه /etc/httpd/sites-available تنظیمات مربوط به سایت خود را می توانید قرار دهید و در قسمت /etc/httpd/sites-enabled به وب سرور اعلام می کنید آیا سایت شما در دسترس هست یا خیر.حال برای تمرین بیشتر یک سایت دلخواه به وجود می آوریم:در ابتدا به دستور زیر پوشه مد نطر را اضافه می کنیم:$ sudo mkdir -p /var/www/example.com/htmlسپس فایل ها مربوط به سایت خود را می توانید در پوشه /var/www/example.com/html بریزید.همچنین برای ذخیره log ها می توانید یک پوشه جدید باز کنید:$ sudo mkdir -p /var/www/example.com/logحال برای ایجاد تنظیمات مربوط به سایت خود باید در پوشه تنظیمات فایل جدید باز کنید:$ sudo vi /etc/httpd/sites-available/example.com.confو در آن اطلاعات مربوطه به سایت خود را وارد کنید:<VirtualHost *:80> ServerName www.example.com DocumentRoot /var/www/example.com/html ErrorLog /var/www/example.com/log/error.log CustomLog /var/www/example.com/log/requests.log combined</VirtualHost>که در قسمت بالا باید اطلاعات مربوط به سایت خود را وارد کنید. ServerName مربوط به نام سایت شما، DocumentRoot مربوطه به پوشه قرار گرفتن فایل های html سایت شما، ErrorLog مربوط به محل ذخیره سازی log ها می باشد.دقت کنید که در این قسمت می توانید پورت مربوط به سایت خود را مشخص کنید(انتهای خط اول). به طور مثال سایت شما می تواند از طریق پورت 12345 قابل دسترس باشد. ولی باید دقت داشته باشید که در تنظیمات دیواره آتیش پورت مد نظر را باز کنید.همچنین اگر می خواید از سایت شما https باشید باید به قسمت تنطیمات اطلاعات مربوط به private key و certificate File خود را اضافع کنید:<VirtualHost 192.168.0.1:443> DocumentRoot /var/www/html2 ServerName www.example.com SSLEngine on SSLCertificateFile /path/to/your_domain_name.crt SSLCertificateKeyFile /path/to/your_private.key SSLCertificateChainFile /path/to/DigiCertCA.crt</VirtualHost>که SSLCertificateFile آدرس certificate file شما، SSLCertificateKeyFile آدرس private key شما و SSLCertificateChainFile آدرس Bundle File شما در صورت نیاز می باشد.حال برای آنکه وب سرور آگاهی پیدا کند که سایت شما فعال است یا خبر باید یک لینک مجازی بین تنظیمات سایت و قسمت مربوط به فعال سازی سایت ها ایجاد کنید:$ sudo ln -s /etc/httpd/sites-available/example.com.conf /etc/httpd/sites-enabled/example.com.confحال وب سرور از وجود سایت شما آگاه می شود. برای فعال کردن سایت خود می توانید از دستور زیر استفاده کنید:$ sudo a2ensite example.comهمچنین برای غیر فعال کردن وب سایت نیز می توانید از دستور زیر استفاده کنید:$ sudo a2disite example.comبعد از انجام تغییرات باید وب سرور را restart کنید. دستورات زیر مربوط به راه اندازی وب سرور و موارد مشابه می باشد.راه اندازی سرویس وب سرور:$ sudo systemctl start httpdتوفق سرویس وب سرور:$ sudo systemctl stop httpdراه اندازی مجدد سرویس وب سرور:$ sudo systemctl restart httpdتنظیم کردن مجدد تنظیمات وب سرور:$ sudo systemctl reload httpdمشاهده کردن وضعیت فعلی وب سرور:$ sudo systemctl status httpdامیدوارم بتوانید از مطالب بالا برای راه اندازی سایت خود استفاده کنید.منابعhttps://www.linode.comhttps://phoenixnap.comhttps://www.digitalocean.comhttps://www.digicert.com