استفاده و اهمیت فایل htaccess چیست
در ابتدا، باید آگاه باشید که فایل htaccess یک فایل است که تنها در هاستهایی با وبسرور Apache مورد استفاده قرار میگیرد. برای توضیح کاربرد این فایل به شما به صورت ساده میگوییم که htaccess وظیفه کنترل و استفاده از ماژولهای نصب شده بر روی وبسرور شرکتهای هاستینگ را دارد. به عنوان مثال، میتوان درون این فایل کدهای مفیدی را قرار داد و با استفاده از آن کدها، برخی از ماژولهای نصب شده را در سایت فعال کرد و دستورات مربوط به آنها را صادر کرد.
به عنوان یک نمونه، افراد میتوانند از طریق این فایل، ماژول mod_rewrite را فعال کنند و با استفاده از این ماژول، ساختار URLهای سایت را کنترل نمایند. همچنین، با نوشتن برخی از کدهای مورد نیاز در این فایل، میتوان به عنوان مثال یکی از ماژولهای امنیتی را بر روی سایت فعال کرد و از ورود برخی از IPها به سایت جلوگیری نمود. این فایل قابلیت انجام تعداد زیادی از وظایف مختلف را دارا بوده و امکانات متعددی از جمله مدیریت امنیت و تنظیمات سفارشی را به کاربران ارائه میدهد.
عدم سازگاری فایل htaccess با هاست و ایجاد خطای "Internal Server Error"
گاهی اوقات، در این فایل، کدهایی که با سرور سازگار نیستند ممکن است توسط سیستمهای مدیریت محتوا مانند جوملا یا وردپرس در سایتهایمان قرار گیرند. این امر ممکن است باعث مواجهه سایت با خطاهای جدی شود. به عنوان مثال، ممکن است در این فایل، کدی برای فعال سازی یک ماژول از وب سرور قرار گرفته باشد که به طور کلی این ماژول بر روی سرور شرکتهای هاستینگ فعال نباشد. در زمانی که سایت با خطاهایی نظیر “Internal Server Error” و خطای 500 مواجه میشود، ما باید قادر باشیم این فایل را در داخل هاست پیدا کرده و محتویات آن را به حالت اصلی بازنشانی کنیم.
فایل htaccess کجای هاست قرار دارد
خب، به طور کلی داخل هاست لینوکس، تمام فایلهایی که با نقطه یا دات شروع میشوند، به ویژه در سی پنل، در حالت عادی قابل مشاهده نیستند و جزء فایلهای مخفی یا “hidden” هاست محسوب میشوند. ما میخواهیم به شما آموزش دهیم که چگونه نمایش این فایلها را در هاست فعال کنید تا بتوانید آنها را مشاهده، وارد شوید، و تغییرات لازم را در کدهاشان اعمال کنید. فایل htaccess هم دقیقاً یکی از این فایلهایی است که با نقطه یا دات شروع میشود و به صورت پیشفرض در سی پنل به عنوان یک فایل مخفی در نظر گرفته میشود. برای مشاهده این فایل، لطفاً در ابتدا از طریق آموزش ورود به سی پنل، به هاست سی پنل سایتتان وارد شوید. ما نحوه مشاهده فایل مخفی .htaccess را در سه حالت مختلف به شما آموزش میدهیم.
روش یافتن فایل htaccess در سی پنل با رابط کاربری قالب Paper Lantern جدید
در حالت اول، زمانی که قالب یا تم سی پنل شما Paper Lantern یا به عبارت دیگر، قالب جدید سی پنل است که در حال مشاهده آن هستید، برای رویت فایلهای پنهان در این نسخه از سی پنل، ابتدا از بخش “Files” بر روی “File Manager” کلیک کنید تا وارد این بخش شوید.
خوب، در حال حاضر شما در داخل پوشه “home” هاست سایت خود قرار دارید و اینجا جایگاه فایلهای اصلی و ساختاری هاست شماست. به طور معمول، فایلهای مخفی مانند .htaccess در این مکان قرار نمیگیرند. برای مشاهده این فایل، ابتدا باید وارد بخش “public_html” شوید. برای انجام این کار، بر روی آیکون “public_html” کلیک کنید و سپس دوباره کلیک کنید تا وارد این مسیر شوید.
خوب، همانطور که مشاهده میفرمایید، در حال حاضر فایل htaccess در میان فایلهای ما موجود نمیباشد؛ زیرا این فایل در حالت مخفی قرار دارد و برای مشاهده آن، باید از بخش مدیریت فایل (File Manager)، روی دکمه “Setting” (تنظیمات) در بالای صفحه کلیک نمایید.
تا پنجره perferences برای شما باز بشه، حالا داخل این پنجره از اون پایین گزینه Show Hidden Files (dotfiles) رو تیک دار کنید و در نهایت روی گزینه save کلیک کنید.
تا مطابق تصویر فایل .htaccess برای شما به نمایش در بیاد.
راه یافتن به فایل htaccess در سی پنل با رابط کاربری قدیمی X3
در صورت استفاده از قالب قدیمی سی پنل، یعنی قالب X3، برای دسترسی به فایل htaccess و سایر فایلهای مخفی، میبایست به بخش “Files” رفته و بر روی “File Manager” کلیک نمایید. همانطور که مشاهده میفرمایید، ظاهر این قالب X3 به طور کامل از قالب جدید سی پنل متفاوت است.
تا پنجره انتخاب دایرکتوری مدیر فایل باز شود، ابتدا در بخش “Select the directory that you wish to open” گزینه “Web Root (public_html/www)” را انتخاب کنید. سپس در همین پنجره، گزینه “Show Hidden Files (dotfiles)” را فعال کرده و سپس بر روی دکمه “Go” کلیک کنید.
تا وارد این قسمت بشین، همونطوری که میبینین الان فایل .htaccess برای ما قابل مشاهده هستش و میتونیم به راحتی اون رو ویرایش کنیم.
روش یافتن فایل htaccess در نرمافزار FTP با استفاده از FileZilla
در حالت آخر و سوم، زمانی که از طریق نرمافزارهای FTP مانند FileZilla به مدیریت فایلهای وبسایت خود میپردازید، امکان دارد که قادر به مشاهده فایلهای پنهان در هاست خود، مانند فایل .htaccess، نباشید. برای مشاهده فایلهای پنهان در داخل نرمافزارهایی مانند FileZilla، لطفاً ابتدا وارد حساب FTP وبسایت خود شوید تا از این طریق به دسترسی به دایرکتوریهایی که به آنها دسترسی دارید، بپردازید.
حالا به بخش بالای نرم افزار بر روی سربرگ “Server” کلیک کنید، سپس گزینه “Force Showing Hidden Files” را انتخاب نمایید. حالا با زدن دکمه “Refresh”، میتوانید به راحتی فایل .htaccess را در این بخش مشاهده کرده و آن را ویرایش نمایید.
پنج نکته حیاتی درباره فایل htaccess در محیط هاستینگ
نکته اول این است که اگر تمام مراحل فوق را امتحان کرده و همچنان نتوانستهاید در سیپنل فایل مخفی .htaccess را مشاهده کنید، این به این معناست که این فایل به صورت کلی در هاست شما وجود ندارد یا سیستم مدیریت محتوای وبسایت شما نیازی به ایجاد این فایل ندارد. اگر میخواهید این فایل را داشته باشید، میتوانید از طریق آموزش ایجاد فایل جدید در سیپنل، یک فایل اضافه کنید و در ابتدا یک نقطه (.) یا دات بگذارید و سپس نام آن را بهصورت htaccess بنویسید تا این فایل ایجاد شود.
نکته دوم این است که اگر از سیستمهای مدیریت محتوا معروف مانند جوملا یا وردپرس استفاده میکنید و به دلیل اعمال تغییرات در این فایل، سایت شما با خطای “internal server error” یا 500 مواجه شده است، یا حتی اگر شما هیچ تغییری در این فایل ایجاد نکردهاید اما افزونههای نصب شده بر روی سایت تغییراتی در این فایل ایجاد کردهاند که باعث اختلال در سایت شما شده، در ابتدا این فایل را باز کنید و کدهای استاندارد و سازگاری که در مقاله مربوط به این ویدئو آوردهشده است را در فایل قبلی جایگزین کنید تا مشکل وبسایت شما برطرف شود.
کدهای استاندارد برای فایل htaccess وردپرس:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
کد های استاندارد برای فایل htaccess. جوملا:
##
# @package Joomla
# @copyright Copyright (C) 2005 – 2016 Open Source Matters. All rights reserved.
# @license GNU General Public License version 2 or later; see LICENSE.txt
##
##
# READ THIS COMPLETELY IF YOU CHOOSE TO USE THIS FILE!
#
# The line ‘Options +FollowSymLinks’ may cause problems with some server configurations.
# It is required for the use of mod_rewrite, but it may have already been set by your
# server administrator in a way that disallows changing it in this .htaccess file.
# If using it causes your site to produce an error, comment it out (add # to the
# beginning of the line), reload your site in your browser and test your sef urls. If
# they work, then it has been set by your server administrator and you do not need to
# set it here.
##
## No directory listings
IndexIgnore *
## Can be commented out if causes errors, see notes above.
Options +FollowSymlinks
Options -Indexes
## Mod_rewrite in use.
RewriteEngine On
## Begin – Rewrite rules to block out some common exploits.
# If you experience problems on your site then comment out the operations listed
# below by adding a # to the beginning of the line.
# This attempts to block the most common type of exploit `attempts` on Joomla!
#
# Block any script trying to base64_encode data within the URL.
RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [OR]
# Block any script that includes a <script> tag in URL.
RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]
# Block any script trying to set a PHP GLOBALS variable via URL.
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Block any script trying to modify a _REQUEST variable via URL.
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
# Return 403 Forbidden header and show the content of the root homepage
RewriteRule .* index.php [F]
#
## End – Rewrite rules to block out some common exploits.
## Begin – Custom redirects
#
# If you need to redirect some pages, or set a canonical non-www to
# www redirect (or vice versa), place that code here. Ensure those
# redirects use the correct RewriteRule syntax and the [R=301,L] flags.
#
## End – Custom redirects
##
# Uncomment the following line if your webserver’s URL
# is not directly related to physical file paths.
# Update Your Joomla! Directory (just / for root).
##
# RewriteBase /
## Begin – Joomla! core SEF Section.
#
RewriteRule .* – [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
#
# If the requested path and file is not /index.php and the request
# has not already been internally rewritten to the index.php script
RewriteCond %{REQUEST_URI} !^/index\.php
# and the requested path and file doesn’t directly match a physical file
RewriteCond %{REQUEST_FILENAME} !-f
# and the requested path and file doesn’t directly match a physical folder
RewriteCond %{REQUEST_FILENAME} !-d
# internally rewrite the request to the index.php script
RewriteRule .* index.php [L]
#
## End – Joomla! core SEF Section.
سومین نکته که باید به آن توجه داشته باشید این است که پس از هر ویرایش در فایل، باید دقت کنید که پسوند html یا txt به آخر فایل افزوده نشده باشد. به عبارت دیگر، نام فایل شما نباید به صورت txt یا htaccess.html باشد؛ زیرا در این صورت هیچکدام از کدهای موجود در این فایل اجرا نخواهند شد.
نکته چهارمی که بسیار مهم است، این است که برخی از کدهای افزایش امنیت وبسایت از طریق فایل htaccess وجود دارند. توصیه میشود که این کدها را در فایل htaccess هاست وبسایتتان قرار دهید. با این حال، باید به دقت توجه داشته باشید که بخش اصلی امنیت یک هاست توسط شرکتهای هاستینگ در سرورهای خود تأمین میشود و استفاده از این کدها در فایل htaccess باید با احتیاط انجام شود. بعضی اوقات، این کدها ممکن است به جای افزایش امنیت، باعث مشکلات جدی در بخشهای حیاتی وبسایت شما شوند.
آخرین نکته ویژه، این است که فایل htaccess از ترکیب دستورات و کدها استفاده میکند تا برخی از ماژولهای سرور وب آپاچی را فعال کند. اگر شما کدهای بسیار زیادی را در این فایل قرار دهید، ممکن است در حال حاضر به مشکل بر نخورید، اما هنگام انتقال وبسایت به یک هاست دیگر، با مشکلات جدی مواجه شوید. به همین دلیل توصیه نهایی این است که از ویرایش فایل htaccess و افزودن کدها به آن به حداقل بپرهیزید.
پنهان سازی فایلها در محیط سی پنل هاست
اگر توجه داشته باشید، نام فایلهای پیکربندی با یک نقطه در ابتدا آغاز میشود، به عنوان مثال htaccess. این نقطه عامل اصلی پنهان شدن فایل است. بنابراین، برای پنهان کردن فایلهای خود، کافی است روی فایل مورد نظر راست کلیک کرده و گزینه “تغییر نام” را انتخاب کنید. سپس نام فایل را تغییر داده و یک نقطه به ابتدای آن اضافه کنید. در پایان، با کلیک بر روی دکمه “تغییر نام فایل”، فایل شما پنهان خواهد شد.
ارسال پاسخ