تبلیغات
آموزش

معرفی اسپانسر های ما

 


                                                                                                                                   
PinterestInstagram Facebook Google Plus TwitterCloob.ComYouTubeAparat.ComLenzor.ComLinkedin.Com


راهنمای کاربردی فایل های .htaccess

تعریف: .htaccess یا Hypertext access یک فایل پیکربندی سطح دایرکتوری است که توسط وب سرور های متعددی پشتیبانی می شود، که امکان تنظیم غیر متمرکز برای مدیریت پیکربندی های سرور را فراهم می آورد. این فایل در داخل شاخه های وب قرار گرفته و امکان تنظیم مجدد زیر مجموعه ای از تنظیمات کلی دایرکتوری هایی که در داخل آن قرار دارد و دایرکتوری های زیر مجموعه را فراهم می آورد.
هدف اصلی .htaccess همانطور که از نام پیداست، امکان کنترل سطح دسترسی هر دایرکتوری به صورت مجزاست، به عنوان مثال نیاز به پسورد برای دستیابی به یک سری از داده ها. امروزه .htaccess به غیر از موارد نامبرده قابلیت بازنویسی تنظیمات دیگری نظیر نوع محتوا و کاراکتر، هندلر های CGI و ... را دارد.
* منبع: ویکی پدیا انگلیسی

اکنون هدف از نگارش این پست، ارائه راهنمایی هایی برای برنامه نویسان تازه کاری است که به هر نحو نیاز به تغییر و تفسیر این فایل پیکربندی را دارند. در ادامه مهم ترین و کاربردی ترین دستورات به صورت یک به یک توضیح داده می شود:
1- در نظر گرفتن صفحه پیشفرض در دایرکتوری:
DirectoryIndex index.html index.php index.htm
سیستم به صورت اتوماتیک هر کدام از فایل های موجود از بین لیست را به عنوان صفحه پیشفرض معرفی می کند. اولویت بر اساس تعریف است.

2- ایجاد ارور شخصی سازی شده:
ErrorDocument 404 errors/404.html
هنگامی که وب سرور با خطا های گوناگونی برخورد کرد، در این مثال 404، شما می توانید صفحه را به یک آدرس از پیش تعریف شده نظیر گزینه بالا منتقل کنید، همینطور طبق کد پایین امکان ایجاد وضعیت داینامیک را نیز برای اررور های گوناگون در اختیار خواهید داشت:
ErrorDocument 404 /cgi-bin/error/error?404

3- کنترل سطح دسترسی به فایل ها و دایرکتوری:
بیشترین کاربردی که فایل های .htaccess دارند، تنظیم سطح دسترسی به یک دایرکتوری، مسیر یا فایل مشخصی است؛ به عنوان مثال ممکن است دایرکتوری خاصی در صفحه فراخوانی شده باشد، اما شما نخواهید تا کاربران به صورت مستقیم به فایل های داخل آن دسترسی داشته باشند، بنابراین می توانید از دستور زیر در فایل .htaccess درون دایرکتوری استفاده نمائید:
deny from all
شما هم چنین می توانید همین تعریف را بر اساس IP ها نیز تفکیک کنید، به عنوان مثال شما دوست دارید یک رنج از IP قادر به بازدید صفحه باشند، اما سایر IP ها نتوانند به آن دسترسی بیابند که از دستور زیر طبق نیاز استفاده خواهید نمود:
order deny,allow
deny from all
allow from 192.168.0.0/24
کلمه all به همه انواع درخواست ها اشاره دارد و به جای آن می توانید همانطور که گفتیم از IP آدرس ها استفاده نمائید.
گاهی دوست دارید یک IP مشخص را از دسترسی به صفحه منع کنید، مانند روباتی که از قوانین متداول پیروی نمی کند، بنابراین از کدی شبیه به زیر استفاده می کنید:
order allow,deny
deny from 83.222.23.219
allow from all

4- اصلاح متغیر های محلی:
متغیر های محلی شامل اطلاعاتی است که توسط فراخوانی های سمت سرور و CGI مورد استفاده قرار می گیرد. ایجاد (Set) و حذف (Unset) کردن این متغیر ها از دستور SetEnv و دستور UnSetEnv امکان پذیر است. مثال:
SetEnv SITE_WEBMASTER "Hamid Yousefi"
SetEnv SITE_WEBMASTER_URI mailto:mails.Mihanblog@gmail.com
UnSetEnv REMOTE_ADDR

5- ریدایرکت نوع 301 با استفاده از .htaccess:
برای ریدایرکت از یک مستند قدیمی به یک آدرس جدید، از این کد استفاده خواهید نمود:
Redirect 301 /beta/yourpage.html http://mydom.ir/final/hello.html
برای انتقال کامل یک دایرکتوری به یک آدرس جدید نیز می توانید از کد زیر استفاده نمائید:
RedirectMatch 301 /master(.*) http://yourdomain.com/$1

6- پیاده سازی طرح کش:
ایجاد طرح کش (ذخیره سازی موقت) برای افزایش کارایی سیستم است. شما می توانید منابع استاتیک یا هر نوع داده منحصر به فردی را طبق دستورات زیر وارد طرح کش نمائید:

<FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|swf|mp3|mp4)$">
   Header set Cache-Control "public"
   Header set Expires "Thu, 15 Apr 2010 20:00:00 GMT"
   Header unset Last-Modified
</FilesMatch>
<FilesMatch "\.(html|htm|xml|txt|xsl)$">
   Header set Cache-Control "max-age=7200, must-revalidate"
</FilesMatch>
<FilesMatch "\.(js|css)$">
   SetOutputFilter DEFLATE
   Header set Expires "Thu, 15 Apr 2010 20:00:00 GMT"
</FilesMatch>

7- فشرده سازی خروجی با استفاده از GZip:
با اضافه کردن دستورات زیر شما همه منابع js و css و ... خود را با استفاده از فشرده ساز GZip به خروجی خواهید فرستاد:

<IfModule mod_gzip.c>
    mod_gzip_on         Yes
    mod_gzip_dechunk  Yes
    mod_gzip_item_include file      \.(html?|txt|css|js|php|pl)$
    mod_gzip_item_include handler   ^cgi-script$
    mod_gzip_item_include mime      ^text/.*
    mod_gzip_item_include mime      ^application/x-javascript.*
    mod_gzip_item_exclude mime      ^image/.*
    mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</IfModule>
کد بالا تنها زمانی کارایی خواهد داشت (همانطور که در دستور IfModule مشخص است) که ماژول mod_gzip بر روی وب سرور فعال باشد. در صورتی که وب سرور شما از ماژول mod_deflate پشتیبانی می کند، می توانید از کد زیر استفاده کنید:

<Location>
    SetOutputFilter DEFLATE
      SetEnvIfNoCase Request_URI  \
        \.(?:gif|jpe?g|png)$ no-gzip dont-vary
    SetEnvIfNoCase Request_URI  \
        \.(?:exe|t?gz|zip|gz2|sit|rar)$ no-gzip dont-vary
</Location>
در صورتی که وب سرور شما از mod_deflate هم پشتیبانی نمی کند، از دستورات زیر استفاده کنید:
<FilesMatch "\.(txt|html|htm|php)">
    php_value output_handler ob_gzhandler
</FilesMatch>
در وضعیت عادی، وب سرور ها این دستور را اجرا خواهند نمود.

8- ریدایرکت مرورگر به https:
RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

9- بازنویسی (ReWrite) آدرس ها (URL) با استفاده از .htaccess
برای دسترسی به آدرس index.php?do=contact از طریق آدرس contact.html می توانید از کد زیر استفاده نمائید:
RewriteEngine on
RewriteRule ^contact\.html$ index.php?do=contact
برای بازنویسی حالاتی نظیر همانند سازی دسترسی products/32.html به index.php?do=products&id=32 دستور زیر می تواند مفید باشد:
RewriteEngine on
RewriteRule ^product/([a-zA-Z0-9_-]+)/([0-9]+)\.html$ product.php?id=$2

10- بازنویسی آدرس های بدون پیشوند www به آدرس های دارای www از همان آدرس:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^Mihanblog\.com$
RewriteRule (.*) http://www.Mihanblog.com/$1 [R=301,L]
بازنویسی آدرس yoursite.com/xyz به index.php?username=xyz
RewriteEngine On
RewriteRule ^([a-zA-Z0-9_-]+)$ user.php?username=$1
RewriteRule ^([a-zA-Z0-9_-]+)/$ user.php?username=$1

11- بازنویسی دامنه اصلی به ساب دامنه یا دایرکتوری زیر شاخه public_html:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^Mihanblog\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.Mihanblog\.com$
RewriteCond %{REQUEST_URI} !^/beta/
RewriteRule (.*) /beta/$1

12- کنترل دسترسی به یک فایل:
در اغلب اوقات فایل .htaccess سطوح دسترسی به کل دایرکتوری را تنظیم می کند، اما امکان تعیین سطح دسترسی به یک فایل منحصر به فرد را نیز داریم. می توان برای این کار از کد زیر استفاده نمود:
<Files quiz.html>
   order deny,allow
   deny from all
   AuthType Basic
   AuthName "Characterology Student Authcate"
   AuthLDAP on
   AuthLDAPServer ldap://directory.characterology.com/
   AuthLDAPBase "ou=Student, o=Characterology University, c=au"
   require valid-user
   satisfy any
</Files>
این ها همه آن چیزی نیست که از فایل .htaccess برای باز تنظیم آن می توان استفاده کرد، اما عملا مهم ترین آن ها هست.


سایت شما چه زمانی نیاز به دوباره سازی و بازبینی دارد ؟


زمانی که مردم به سایت شما مراجعه می کنند اولین احساس و یا به عبارت بهتر اولین ادراک خود نسبت به کسب و کار شما را شکل می دهند.

سایت شما در نگاه اول چه احساسی به آنها می دهد؟

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

بر چه اساسی می توانید بگویید که سایت شما نیاز به یک تغییر اساسی دارد؟ یکی از روش ها اینست که آیا شما در طی ۵ سال اخیر ظاهر کلی سایت را تغییر داده اید یا خیر؟ اگر این کار را انجام نداده اید، شانس خوبی برای تغییر ظاهر آن دارید. راه دیگر مقایسه سایت خودتان با سایت رقیبانتان است و بعد قضاوت در رابطه با برتر بودن یا نبودن آن نسبت به آنهاست. اگر فقط خیلی ساده حدود یک تا دو ساعت صرف این مقایسه کنید، به تفاوتهای وحشتناکی دست خواهید یافت که نیاز به تغییر دارند.

نمونه های زیر را در نظر بگیرید. اگر به دنبال دندانپزشک بودید و هیچ اطلاعی در مورد هریک از دو دندانپزشکی که در زیر معرفی شده اند، نداشتید؛ کدام یک را انتخاب می کردید؟

نمونه اول از سایت یک دندانپزشک

 نمونه دوم از سایت یک دندانپزشک

نمونه اول بدلیل حضور رنگهای مختلف قوی و پر انرژی به نظر می رسد. بلافاصله، شما متوجه می شوید که این دندانپزشک خدمات کاشت دندان، خدمات دندانپزشکی در حالت بیهوشی، و ارتودنسی و … را انجام می دهد. اما در نمونه دوم شما باید قسمتهای زیادی از سایت را جستجو کنید تا موفق به یافتن خدمات فوق شوید، کاری که اغلب بازدید کنندگان از سایت شما انجام نمی دهند.

علاوه بر آن، من این احساس را دارم که دندانپزشک اول به روزتر است. بنابراین، احتمال اینکه بسیار با دقت باشد و در هنگام کارکردن بر روی دندان، من درد کمتری را متحمل شوم نیز بیشتر است. همچنین این احساس را از آن دارم که در کار کردن بسیار حرفه ای تر، لذت بخش تر بوده و باعث به جا ماندن خاطره ای خوش در ذهن من می شود. احساسی که از نمونه سایت دوم به من منتقل نمی شود.

و اما نکته بعد اینکه، همانطور که وبسایت دیگر رقبا را بررسی می کنید، شما ممکن است به ایده هایی دست یابید که موجب افزایش زیادی در تعداد مشتریان شما شود.

مدت زمان باقی ماندن در سایت

نکته مهم دیگر اینکه، در رابطه با چگونگی پنداشت خود در رابطه با ارتباط برقرار کردن دیگران با سایت سایت خود باید بسیار دقت داشته باشید. این روزها مردم همیشه در عجله هستند. اینگونه به نظر می رسد که آنها در مراجعه به سایت شما نیاز به اتخاذ تصمیم در کوتاه ترین زمان ممکن دارند و در حقیقت زمان کافی برای خواندن تمامی اطلاعات ارائه شده از طرف شما را ندارند. تنها به دلیل اینکه تمامی مطالب عرضه شده در سایت از نظر شما با اهمیت است، نمی شود گفت که از دید دیگر بازدید کنندگان نیز به همین معنا باشد. اگر می خواهید خودتان این مورد را آزمون کنید، می توانید اطلاعات آماری سایت خود را بررسی کنید و ببنید که بازدید کنندگان در حقیقت در هر بار بازدید چه مقدار زمان را در سایت شما صرف می کنند. از اینکه ببینید آنها چقدر اندک در هر یک از صفحات شما باقی می مانند، شوک زده خواهید شد، و اگر قدری بیشتر زمان صرف این بررسی کنید، متوجه می شوید که در زمان مراجعه به سایت شما، بازدید کنندگان بیشترین زمان خود را در کدام قسمتها صرف می کنند. اگر صفحه ای با عنوان “درباره ما” و “گواهی نامه ها” دارید، اطلاعات آماری مربوط به آنها را هم مورد بررسی قرار دهید. متوجه خواهید شد که مراجعه کنندگان بخش زیادی از زمان خود را در آن صفحات صرف می کنند. بهتر است بگوییم که صرف کردن زمان، انرژی، فکر و بازارایابی بر روی صفحاتی که بیشترین اعتبار و شهرت در بین مراجعین دارند، کاری بس عاقلانه است.

فکر و برنامه ریزی زیاد را صرف صفحاتی کنید که مراجعین بیشترین زمان خود را برای آنها صرف می کنند. آن صفحات را با رنگهای چشم گیر، جذاب تر کنید. صفحات را با متون زیاد که عموما مورد توجه کاربران هم قرار نمی گیرد، شلوغ نکنید. از خودتان بپرسید، “فکر می کنید مشتریان می خواهند در مراجعه به سایت چه چیزی را بدانند؟”. از این تله قدیمی که هر آنچه را که شما مهم می پندارید، بقیه مردم هم مهم می پندارند بر حزر باشید. به عنوان مثال، زمانی که مردم بصورت آنلاین در جستجوی شما هستند، یکی از اولین مواردی که انها به دنبال آن هستند، شماره تماس شماست، چرا که در آن لحظه آنها آماده برقراری تماس هستند. در حالیکه این موضوع کاملا بدیهی به نظر می رسد، من شخصا با مواردی روبرو بوده ام که در آنها مراجعه کننده باید مثل یک شکارچی بدنبال شکار، در جستجوی شماره تلفن برای تماس باشند. اکثر مردم چنین کاری را انجام نمی دهند. هر قدر روش تماس بر قرار کردن با مشتریان احتمالی خود را راحت تر نمائید، احتمال افزون شدن کسب و کار شما هم بالا می رود.

مورد بعدی که مردم بدنبال دانستن آن هستند آدرس شماست – اینکه دفتر شما در کجا واقع شده است. در حقیقت آنها در ذهن خود در حال بررسی کردن زمان دسترسی به شما و اینکه آیا در جای خیلی دوری واقع شده اید یا نه، هستند. در حالی که این موضوع هم بسیار بدیهی به نظر می رسد، در بررسی های خودم به مراتب با نبود آن برخورد داشته ام.

درباره ویدئوها چطور؟

و اما درباره قرار دادن فایلهای تصویری بر روی سایتتان ! آیا قرار دادن چنین فیلمهای مناسب است؟ بستگی دارد، و این هم دلیل آن است.

من کارهای ویدئو مارکتینگ زیادی را در محیط فیسبوک انجام داده ام. در ابتدا به اشتباه فکر می کردم که مردم     حجم زیادی از ویدئوها را به تماشا می نشینند. اما بر خلاف آن به این نتیجه رسیدم که مردم آنقدر ها هم که من فکر میکنم ویدئو ها را نگاه نمی کنند. نکته دیگر اینکه، اگر ویدئوها بیشتر از چندین دقیقه باشند، به ندرت دیده می شوند. این موضوع باز هم تاکیدی دارد بر اینکه مردم این روزها در عجله به سر می برند. همچنین به این نتیجه رسیدم که هر قدر یک ویدئو کوتاه تر باشد، احتمال دیده شدن آن بیشتر می شود. حتی اگر این ویدئو، یک فیلم کسل کننده هم باشد، در صورتی که کوتاه باشد، باز هم احتمال دیده شدن آن افزایش می یابد.

بر تصاویر تاکید داشته باشید

بنابراین، آن نکته اخیر من را به این موضوع رساند، که تصاویر بطور کلی در وبسایت ها بسیار کاربرد دارند. اگر از تصویر کاری که انجام می دهید بر روی سایت خودتان استفاده می کنید، همیشه تصویر نتیجه مطلوب نهایی را پست کنید و از در نظر گرفته شدن زیر نویس برای آن مطمئن شوید. ما به این نتیجه رسیده ایم که مردم همیشه زیرنویس تصاویر را بطور دیوانه واری می خوانند. آن دسته از صاحبان کسب و کار که در زمینه تولید و نصب سقف برای ساختمان ها فعالیت دارند، باید در سایت خود از تصاویر این سقف ها استفاده کنند. دندانپزشکان می توانند از تصاویر خنده های زیبا که در شکل گرفتن آنها نقش داشته اند، استفاده کنند. استفاده از تصاویر قبل و بعد از کار نیز مناسب است. تصاویر قبل از کار عموما درباره شدت غیر جذاب بودن یک چیزی است، بنابراین زمانی که شما تصویر بعد از کار را می بیند درباره کیفیت کار آن شرکت تحت تاثیر قرار می گیرید. آنها در بیننده ایجاد تاثیر می کنند. اما تصور نکنید که این تصاویر همان تاثیری را که شما در نظر دارید بر روی بیننده خواهند داشت. همیشه آنها را قبل از استفاده ازمون کنید.

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

سپس، همین که در حال بررسی سایتهای دیگر رقبا برای بدست آوردن ایده هستید، دچار این ذهنیت غلط نشوید که “او فلان چیز را دارد، پس من هم آن را می خواهم.” تنها به دلیل اینکه یک سایت ویژگی ای دارد که از نظر شما مطلوب است، نمی شود گفت که داشتن آن ویژگی بخصوص، سود خالص شما را تحت تاثیر قرار می دهد. به عنوان مثال سایتهایی را دیده ام که در زمان ورود به آنها و قبل از دسترسی به هر قسمت دیگر از سایت برای شما نمایشی ۱۰ تا ۲۰ ثانیه ای از تصاویر زیبا و دلنشین در نظر گرفته شده است. این یک اشتباه خیلی بزرگ است.



آموزش با نگرشی نوین

گروه آموزش

مترجم سایت


آخرین پست ها


آمار وبلاگ

  • کل بازدید :
  • بازدید امروز :
  • بازدید دیروز :
  • بازدید این ماه :
  • بازدید ماه قبل :
  • تعداد نویسندگان :
  • تعداد کل پست ها :
  • آخرین بازدید :
  • آخرین بروز رسانی :
  • رتبه وبلاگ در یاهو و گوگل:

    Yahoo bot last visit powered by  Ybotvisit.com

    رتبه وبلاگ در گوگل

  • SEO Stats powered by MyPagerank.Net

  • افراد آنلاین :

    web stats

  • IP free counters