24-10-2018, 11:08 AM
[font=iranyekanweb, sans-serif]آموزش کامل ریدایرکت به WWW[/font]
در این مقاله راجع به ریدایرکت به www صحبت خواهیم کرد. در واقع مهم نیست که وب سایت شما با www.yoursite.com یا yoursite.com باز شود.
من ترجیح می دهم که سایت بدون www باز شود به این دلیل که Tech Stream از www استفاده نمی کند. شما می توانید هر کدام از گزینه ها را انتخاب کنید.
داشتن هر دو نسخه به طور همزمان می تواند مشکلاتی ایجاد کند. در این زمان شما باید نسخه را به یک مورد ریدایرکت کنید.
اگر شما به تازگی شروع به کار کرده اید، می توانید هر کدام را برای وب سایت خود انتخاب کنید. اما اگر مدتی است که وب سایت شما فعال می باشد، بهتر است قبل از ریدایرکت کمی موتورهای جستجو را تجزیه و تحلیل کرده و مطلع شوید که راجع به وب سایت شما کدوم مورد بیشتر جستجو شده است.
[img=702x0]https://www.espinashost.com/wp-content/uploads/2018/10/www-or-non-www-300x138.jpg[/img]
ریدایرکت مسیرهای بدون www به www با HTACCESS
کد زیر ریدایرکت 301 به ورژن www از وب سایت شما، کاربران را هدایت کرده و به آن ها هشدار می دهد که صفحات مورد نظر آن انتقال یافته اند.
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.yoursite\.com
RewriteRule (.*) http://www.yoursite.com/$1 [R=301,L]
برای فعال کردن وب سایت با آدرس www و https
RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} !^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]
[font=iranyekanweb, sans-serif]ریدایرکت www به آدرس وب سایت بدون www برای آپاچی با HTACCESS[/font]
کد زیر باعث ریدایرکت دائمی 301 به نسخه بدون WWW می شود:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.yoursite\.com [NC]
RewriteRule (.*) http://yoursite.com/$1 [R=301,L]
شما همچنین می توانید از کد [RewriteCond %{HTTP_HOST} ^example\.com [NC به جای کد RewriteCond %{HTTP_HOST} !^www\.yoursite\.com استفاده نمائید. هر دوی آن ها شبیه هم هستند.
ریدایرکت آدرس www به آدرس بدون www با https از طریق HTACCESS
اگر شما ناچار به داشتن https بدون استفاده از www هستید، از کد زیر استفاده نمائید:
RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
تغییر مسیر از www به وب سایت بدون www برای آپاچی با Httpd.Con
اگر شما به HTACCESS دسترسی نداشته باشید، می توانید از httpd.con استفاده نمائید. اکثر هاست های رایگان به HTACCESS دسترسی را فراهم نمی کنند.
ServerName www.example.com
Redirect 301 / http://example.com/
[font=iranyekanweb, sans-serif]ریدایرکت به www برای آپاچی با استفاده از Httpd.Con[/font]
ServerName example.com
Redirect 301 / http://www.example.com/
بسیاری از اسکریپت های محبوب، سیستم های مدیریت محتوای خاص فایل htaccess را ویرایش کرده و تغییر مسیر خود را اضافه می کنند. بنابراین ممکن است شما ناچار به افزودن هیچ کدام از کدهای بالا نباشید. اضافه کردن دوباره این ها می تواند به خطاهایی مانند خطای 500 منجر شود.
وب سرور مایکروسافت IIS
شما باید کد زیر را به فایل اضافه کنید که در همه صفحات و یا به طور مستقیم در بالای هر فایل اضافه شده است.
If InStr(LCase(Request.ServerVariables("SERVER_NAME")),"www") = 0 Then
Response.Status="301 Moved Permanently"
Response.AddHeader "Location", "http://www.domain.com"
End If
[font=iranyekanweb]نکته: این دستورالعمل ها نیاز به دسترسی به IIS دارند. اگر این دسترسی را ندارید، باید از یکی از روش های اسکریپت سمت سرور مانند ASP یا PHP استفاده نمایید.[/font]
در این مقاله راجع به ریدایرکت به www صحبت خواهیم کرد. در واقع مهم نیست که وب سایت شما با www.yoursite.com یا yoursite.com باز شود.
من ترجیح می دهم که سایت بدون www باز شود به این دلیل که Tech Stream از www استفاده نمی کند. شما می توانید هر کدام از گزینه ها را انتخاب کنید.
داشتن هر دو نسخه به طور همزمان می تواند مشکلاتی ایجاد کند. در این زمان شما باید نسخه را به یک مورد ریدایرکت کنید.
اگر شما به تازگی شروع به کار کرده اید، می توانید هر کدام را برای وب سایت خود انتخاب کنید. اما اگر مدتی است که وب سایت شما فعال می باشد، بهتر است قبل از ریدایرکت کمی موتورهای جستجو را تجزیه و تحلیل کرده و مطلع شوید که راجع به وب سایت شما کدوم مورد بیشتر جستجو شده است.
[img=702x0]https://www.espinashost.com/wp-content/uploads/2018/10/www-or-non-www-300x138.jpg[/img]
ریدایرکت مسیرهای بدون www به www با HTACCESS
کد زیر ریدایرکت 301 به ورژن www از وب سایت شما، کاربران را هدایت کرده و به آن ها هشدار می دهد که صفحات مورد نظر آن انتقال یافته اند.
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.yoursite\.com
RewriteRule (.*) http://www.yoursite.com/$1 [R=301,L]
شما همچنین می توانید به جای [RewriteCond %{HTTP_HOST} ^example\.com [NC از کد RewriteCond %{HTTP_HOST} !^www\.yoursite\.com استفاده نمایید
تغییر آدرس وب سایت بدون www به وب سایت با www و https از طریق HTACCESSبرای فعال کردن وب سایت با آدرس www و https
RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} !^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]
[font=iranyekanweb, sans-serif]ریدایرکت www به آدرس وب سایت بدون www برای آپاچی با HTACCESS[/font]
کد زیر باعث ریدایرکت دائمی 301 به نسخه بدون WWW می شود:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.yoursite\.com [NC]
RewriteRule (.*) http://yoursite.com/$1 [R=301,L]
شما همچنین می توانید از کد [RewriteCond %{HTTP_HOST} ^example\.com [NC به جای کد RewriteCond %{HTTP_HOST} !^www\.yoursite\.com استفاده نمائید. هر دوی آن ها شبیه هم هستند.
ریدایرکت آدرس www به آدرس بدون www با https از طریق HTACCESS
اگر شما ناچار به داشتن https بدون استفاده از www هستید، از کد زیر استفاده نمائید:
RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
تغییر مسیر از www به وب سایت بدون www برای آپاچی با Httpd.Con
اگر شما به HTACCESS دسترسی نداشته باشید، می توانید از httpd.con استفاده نمائید. اکثر هاست های رایگان به HTACCESS دسترسی را فراهم نمی کنند.
ServerName www.example.com
Redirect 301 / http://example.com/
[font=iranyekanweb, sans-serif]ریدایرکت به www برای آپاچی با استفاده از Httpd.Con[/font]
ServerName example.com
Redirect 301 / http://www.example.com/
بسیاری از اسکریپت های محبوب، سیستم های مدیریت محتوای خاص فایل htaccess را ویرایش کرده و تغییر مسیر خود را اضافه می کنند. بنابراین ممکن است شما ناچار به افزودن هیچ کدام از کدهای بالا نباشید. اضافه کردن دوباره این ها می تواند به خطاهایی مانند خطای 500 منجر شود.
وب سرور مایکروسافت IIS
شما باید کد زیر را به فایل اضافه کنید که در همه صفحات و یا به طور مستقیم در بالای هر فایل اضافه شده است.
If InStr(LCase(Request.ServerVariables("SERVER_NAME")),"www") = 0 Then
Response.Status="301 Moved Permanently"
Response.AddHeader "Location", "http://www.domain.com"
End If
[font=iranyekanweb]نکته: این دستورالعمل ها نیاز به دسترسی به IIS دارند. اگر این دسترسی را ندارید، باید از یکی از روش های اسکریپت سمت سرور مانند ASP یا PHP استفاده نمایید.[/font]