या लेखात, आपण .htaccess फाइल वापरण्याच्या मूलभूत तत्त्वांचा शोध घेऊ, जी SEO वाढवण्यासाठी महत्त्वाची आहे. ही फाइल सर्च इंजिनद्वारे पृष्ठांचे योग्य अनुक्रमणिका सुनिश्चित करते. आपण रीडायरेक्ट कसे व्यवस्थापित करायचे, सुरक्षा कशी कॉन्फिगर करायची आणि कामगिरी कशी वाढवायची ते शिकू. याव्यतिरिक्त, आपण ही फाइल स्वतंत्रपणे कशी कॉन्फिगर करायची याबद्दल टिप्स देऊ.
.htaccess का आवश्यक आहे?
.htaccess फाइल ही Apache सर्व्हरवरील वेब डेव्हलपर्ससाठी एक प्रकारची "रिमोट कंट्रोल" म्हणून काम करते. ती विविध पॅरामीटर्स समायोजित करण्यासाठी आणि वेबसाइटचे वर्तन व्यवस्थापित करण्यासाठी सोयीस्कर साधने देते. जेव्हा सर्व्हरच्या मुख्य कॉन्फिगरेशन फाइल्समध्ये थेट प्रवेश उपलब्ध नसतो (उदाहरणार्थ, व्हर्च्युअल होस्टिंगच्या बाबतीत अनेकदा असे होते), तेव्हा .htaccess आवश्यक बदल करण्यासाठी एक उपयुक्त साधन बनते.
Htaccess बहुतेकदा तुमच्या साइटच्या रूट फोल्डरमध्ये किंवा ज्या फोल्डरमध्ये विशेष कॉन्फिगरेशन आवश्यक असते तिथे असते. उदाहरणार्थ, जर तुम्ही वर्डप्रेस वापरत असाल, तर कॉन्फिगरेशन Yoast SEO प्लगइनद्वारे केले जाऊ शकते, ज्याची चर्चा आम्ही लेखात केली आहे. robots.txt कॉन्फिगर करत आहे. इतर प्रकरणांमध्ये, आवश्यक फोल्डरमध्ये जाऊन विद्यमान .htaccess फाइल संपादित करणे किंवा ती अद्याप तयार केली नसल्यास ती तयार करणे पुरेसे आहे.
.htaccess फाइल कॉन्फिगर करणे
३०१ htaccess रीडायरेक्ट करा
.htaccess फाइलमधील 301 रीडायरेक्टची तुलना वेबसाइटवरील कायमस्वरूपी रीडायरेक्टेशनशी करता येते. ते सर्च इंजिन आणि ब्राउझरना कळवते की पेज आता कायमस्वरूपी नवीन पत्त्यावर आहे आणि बुकमार्क आणि इंडेक्सिंग अपडेट करण्याचे सुचवते. अशा रीडायरेक्टेशनचा वापर सामान्यतः जेव्हा एखादे पेज हलवले जाते किंवा हटवले जाते तेव्हा शोध निकालांमध्ये त्याची रँकिंग टिकवून ठेवण्यासाठी आणि अभ्यागतांना नवीन स्थानावर रीडायरेक्ट करण्यासाठी केला जातो.
पुनर्निर्देशने सक्रिय करण्यासाठी, तुम्हाला .htaccess फाइलमध्ये संबंधित कमांड सक्षम करणे आवश्यक आहे:
RewriteEngine on
त्यानंतर, तुम्ही पुनर्निर्देशनाचा सर्वात सोपा प्रकार कॉन्फिगर करू शकता:
<IfModule mod_rewrite.c>
RewriteEngine On
Redirect 301 /old-page.html /new-page.html
</IfModule>
वापरून एक समान पुनर्निर्देशन रीडायरेक्टकायमस्वरूपी निर्देशक असे दिसते:
<IfModule mod_rewrite.c>
RewriteEngine On
Redirect permanent /old-page.html http://new-domain.ru/new-page.html
</IfModule>
कॉन्फिगर करण्यासाठी या सर्वात सोप्या रीडायरेक्ट पद्धती आहेत. चला अशा कॉन्फिगरेशनचा विचार करूया जे इतर, अधिक प्रगत प्रकारचे रीडायरेक्टेशन वापरते mod_rewrite मॉड्यूल:
<IfModule mod_rewrite.c>
RewriteEngine On
# Redirecting from one page to another
RewriteRule ^old-page.html$ http://www.example.com/new-page.html [R=301,L]
# Redirecting all traffic from one domain to another
RewriteCond %{HTTP_HOST} ^oldsite.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.oldsite.com$
RewriteRule ^(.*)$ http://www.newsite.com/$1 [R=301,L]
# Redirecting from www to non-www (or vice versa)
RewriteCond %{HTTP_HOST} ^www.example.com$
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]
# Redirecting from HTTP to HTTPS
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]
# Redirecting from one subdomain to another
RewriteCond %{HTTP_HOST} ^subdomain1.example.com$
RewriteRule ^(.*)$ http://subdomain2.example.com/$1 [R=301,L]
</IfModule>
तात्पुरते स्थानांतरण दर्शविणारा 302 रीडायरेक्ट .htaccess हा प्रकार खूपच कमी वेळा आढळतो. अशा सेटिंगचे उदाहरण येथे आहे:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^old-page.html$ /new-page.html [R=302,L]
</IfModule>
निर्देशात्मक त्रुटी दस्तऐवज
तुमच्या साइटवर HTTP एरर आल्यावर वापरकर्ता काय पाहतो हे या सेटिंगद्वारे नियंत्रित करता येते. स्टँडर्ड एरर मेसेजऐवजी, तुम्ही तुमचे स्वतःचे पेज दाखवू शकता, जे अभ्यागतासाठी अधिक माहितीपूर्ण असेल आणि त्यांना काय झाले हे समजण्यास मदत करेल. वापरण्यासाठी फक्त हे वाक्यरचना फॉलो करा:
ErrorDocument <error_code> <URL_page>
उदाहरणार्थ,
ErrorDocument 404 /errors/not_found.html
म्हणजे जेव्हा 404 त्रुटी येते, पृष्ठ येथे /त्रुटी/नॉट_फाउंड.html उघडले जाईल. परिपूर्ण URL सारख्याच प्रकारे निर्दिष्ट केल्या आहेत:
ErrorDocument 500 http://example.com/errors/server_error.html
हे उदाहरण चे प्रदर्शन दर्शवते सर्व्हर_एरर.html पृष्ठ येथे http://example.com/errors/ च्या घटना मध्ये 500 त्रुटी
साइट निर्देशिकेत प्रवेश नाकारणे
.htaccess फाइलमध्ये ही कमांड आहे सर्वांकडून नकार द्या, जे तुमच्या वेब सर्व्हरवरील काही फोल्डर्स किंवा फाइल्समध्ये प्रवेश नाकारण्यास मदत करते. डेटा सुरक्षितता सुनिश्चित करण्यासाठी तुम्हाला साइट अभ्यागतांपासून खाजगी माहिती किंवा महत्त्वाच्या फाइल्स लपवायच्या असतील तर हे उपयुक्त ठरू शकते.
सूची अक्षम करण्यासाठी (सर्व उपलब्ध निर्देशिका पाहणे), तुम्हाला ही ओळ जोडावी लागेल:
Options -Indexes
विशिष्ट निर्देशिकेत प्रवेश अवरोधित करण्याचे उदाहरण असे दिसते:
<Directory /path_to_your_directory>
Order Deny,Allow
Deny from all
</Directory>
त्याचप्रमाणे, तुम्ही एकाच फाईलमध्ये प्रवेश नाकारू शकता:
<Files "file.php">
Order Deny,Allow
Deny from all
</Files>
किंवा विस्तारानुसार विविध फायलींसाठी:
<FilesMatch "\.(txt|log|bak)$"> # Select the desired extensions, in the example: txt, log, bak
Order Deny,Allow
Deny from all
</FilesMatch>
आयपी द्वारे प्रवेश अवरोधित करणे
.htaccess फाइलमध्ये IP द्वारे प्रवेश अवरोधित करणे ही एक पद्धत आहे जी तुम्हाला विशिष्ट IP पत्त्यांसाठी किंवा त्यांच्या गटांसाठी तुमच्या वेबसाइटवर प्रवेश प्रतिबंधित करण्याची परवानगी देते. जर तुम्हाला तुमच्या साइटवर किंवा त्याच्या विशिष्ट भागांमध्ये काही लोकांसाठी किंवा अवांछित बॉट्ससाठी प्रवेश प्रतिबंधित करायचा असेल तर हे उपयुक्त ठरू शकते.
एकच आयपी अॅड्रेस ब्लॉक करणे खालील आदेशाने केले जाते:
Order Deny,Allow
Allow from all
Deny from 11.22.33.44
अनेक आयपी अॅड्रेस ब्लॉक करणे "" डुप्लिकेट करून असेच केले जाते.पासून नकार द्या" आवश्यक पत्त्यांसह ओळ.
विविध आयपी अॅड्रेस ब्लॉक करण्यासाठी:
Order Deny,Allow
Allow from all
Deny from 11.11.11.11/24
फक्त विशिष्ट आयपींना प्रवेश देण्यासाठी, कोड जोडा:
Order Deny,Allow
Deny from all
Allow from 11.22.33.44
प्रवेश पूर्णपणे नाकारण्यासाठी, निर्देश वापरा सर्वांकडून नकार द्या, आणि मास्कद्वारे पत्ते ब्लॉक करण्यासाठी, निर्दिष्ट करा ११.२२ पासून नकार द्या.
कोठे, 11.22 आयपी अॅड्रेस आहे का? लपवू.
वापरकर्ता-एजंटद्वारे अभ्यागतांना ब्लॉक करणे
.htaccess फाइलमध्ये वापरकर्ता-एजंटद्वारे वापरकर्त्यांना ब्लॉक करणे ही अभ्यागत वापरत असलेल्या ब्राउझरबद्दलच्या माहितीच्या आधारे तुमच्या वेब सर्व्हरवर कोण प्रवेश करू शकते हे नियंत्रित करण्याची एक पद्धत आहे. वापरकर्ता-एजंट स्ट्रिंगमध्ये तुमच्या सर्व्हरशी संवाद साधण्यासाठी एखादी व्यक्ती वापरत असलेल्या ब्राउझरबद्दलचा डेटा असतो आणि या माहितीमुळे, तुम्ही काही वापरकर्त्यांसाठी प्रवेश प्रतिबंधित करू शकता.
वापरकर्ता-एजंटद्वारे ब्लॉक करण्याचा सर्वात सामान्य मार्ग म्हणजे वापरणे mod_rewrite:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^Bot1 [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Bot2 [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Bot3 [NC]
RewriteRule ^.*$ - [F,L]
</IfModule>
या उदाहरणात:
- वापरकर्ता-एजंट स्ट्रिंग तपासण्यासाठी RewriteCond %{HTTP_USER_AGENT} वापरले जाते.
- ^Bot1, ^Bot2, ^Bot3 ही वापरकर्ता-एजंट स्ट्रिंगची उदाहरणे आहेत जी आपण ब्लॉक करू इच्छितो. NC मॉडिफायर्स दर्शवितात की तुलना केस-असंवेदनशील असावी.
- RewriteRule ^.*$ - RewriteCond च्या कोणत्याही अटी पूर्ण झाल्यास [F,L] विनंतीवर लागू होते. ते 403 Forbidden status code (F) सह प्रतिसाद पाठवते आणि नियम (L) प्रक्रिया करणे थांबवते.
htaccess मध्ये कॅशे करत आहे
.htaccess फाइलद्वारे कॅशिंग कॉन्फिगर केल्याने वापरकर्त्यांसाठी तुमची साइट जलद लोड होऊन ती वेगवान होण्यास मदत होते. हे असे कार्य करते: काही फायली, जसे की प्रतिमा, CSS शैली आणि JavaScript स्क्रिप्ट, पहिल्या लोडनंतर वापरकर्त्याच्या ब्राउझर कॅशेमध्ये संग्रहित केल्या जातात. आता ब्राउझर कॅशेमधून या फायली वापरू शकतो, वापरकर्त्याने प्रत्येक वेळी पेजला भेट दिल्यावर सर्व्हरवरून त्या रीलोड करण्याऐवजी. यामुळे लोडिंग वेळ कमी होतो आणि साइटची कार्यक्षमता सुधारते.
एक उदाहरण विचारात घ्या:
# Enable caching for images for 1 month
<FilesMatch "\.(jpg|jpeg|png|gif|svg)$">
Header set Cache-Control "max-age=2592000, public"
</FilesMatch>
# Enable caching for CSS and JavaScript for 1 week
<FilesMatch "\.(css|js)$">
Header set Cache-Control "max-age=604800, public"
</FilesMatch>
दुसरीकडे, वारंवार अपडेट होणाऱ्या संसाधनांसाठी, कॅशिंग अक्षम करणे आवश्यक आहे:
# Excluding caching for HTML pages and XML files
<FilesMatch "\.(html|xml)$">
Header set Cache-Control "no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires "0"
</FilesMatch>
साइट परफॉर्मन्स ऑप्टिमायझ करणे
The mod_deflate आणि मॉड_जीझिप अपाचे मधील मॉड्यूल्स सर्व्हरने वापरकर्त्यांच्या डिव्हाइसवर पाठवलेली माहिती संकुचित करण्यास मदत करतात. यामुळे फाइल्स आकाराने लहान होतात, ज्यामुळे पेज लोडिंग वेगवान होते. तथापि, हे लक्षात ठेवणे महत्त्वाचे आहे की या मॉड्यूल्सचे समर्थन आणि कॉन्फिगरेशन तुमच्या सर्व्हरनुसार बदलू शकते.
वापरण्याचे उदाहरण mod_deflate मॉड्यूल:
<IfModule mod_deflate.c>
# Compressing text file types
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/x-httpd-php
AddOutputFilterByType DEFLATE application/x-httpd-fastphp
AddOutputFilterByType DEFLATE image/svg+xml
</IfModule>
साठी उदाहरण मॉड_जीझिप:
<IfModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file .(html?|txt|css|js|php|pl)$ # Enabling compression for files with extensions .html, .txt, .css, .js, .php, .pl
mod_gzip_item_include mime ^application/x-javascript.* # Enabling compression for MIME types starting with application/x-javascript
mod_gzip_item_include mime ^text/.* # Enabling compression for MIME types starting with text/
mod_gzip_item_exclude mime ^image/.* # Excluding from compression MIME types starting with image/
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.* # Excluding already compressed data (responses with the Content-Encoding: gzip header)
</IfModule>
आम्ही सर्वात जास्त वापरल्या जाणाऱ्या निर्देशांवर चर्चा केली. तुम्ही फाइलच्या सर्व क्षमतांशी परिचित होऊ शकता. अधिकृत दस्तऐवज.
.htaccess फाइलची कार्यक्षमता कशी तपासायची
तुमची .htaccess फाइल साइटवर काम करत आहे की नाही हे तपासण्यासाठी, तुम्ही खालील पायऱ्या करू शकता:
- जाणूनबुजून .htaccess फाइलमध्ये एरर बदला. प्रतिसादात, सर्व्हरने एरर द्यावी. ही पद्धत फाइलचे ऑपरेशन सामान्यतः सर्व्हरवर लागू केले जाते की नाही हे दर्शवते.
- तुम्ही केलेल्या विशिष्ट बदलांची कार्यक्षमता तपासा. उदाहरणार्थ, एका पॅरामीटरमध्ये किरकोळ समायोजन करा आणि बदलांची उपस्थिती तपासा.
- बदल सर्व्हरच्या प्रतिसादाशी संबंधित आहेत का ते पृष्ठाचा स्थिती कोड तपासा. हे कसे करायचे, आम्ही पूर्वी लेखात वर्णन केले आहे. HTTP त्रुटी कोड: सर्व्हर त्रुटींची संपूर्ण यादी.
- सर्व्हर लॉग पहा. ते .htaccess फाइलच्या ऑपरेशनशी संबंधित सर्व त्रुटी प्रदर्शित करतात.
- ऑनलाइन सेवा किंवा साधनांचा वापर करून चाचणी घ्या.
हे समजून घेणे महत्त्वाचे आहे की .htaccess फाइलची कार्यक्षमता तपासण्यासाठी, तुम्हाला एकाच वेळी सर्व पायऱ्या करण्याची आवश्यकता नाही. सूचीमधून सर्वात योग्य पद्धत निवडणे आणि ती वापरणे पुरेसे आहे.
निष्कर्ष
तुमच्या Apache सर्व्हरला ऑप्टिमायझ करण्यासाठी आणि संरक्षित करण्यासाठी .htaccess फाइल कॉन्फिगर करणे ही एक महत्त्वाची पायरी आहे. ही फाइल रीडायरेक्ट व्यवस्थापित करण्यास, कंटेंट कॉम्प्रेस करण्यास आणि सुरक्षितता सुनिश्चित करण्यास कशी मदत करते हे आम्ही एक्सप्लोर केले आहे. एकदा तुम्ही .htaccess सह काम करण्यात प्रभुत्व मिळवले की, तुम्हाला वेबसाइट्सची कार्यक्षमता आणि कार्यक्षमता सुधारण्यासाठी एक शक्तिशाली साधन मिळते.