मेरे अलावा सभी आगंतुकों को पुनर्निर्देशित करना चाहते हैं

असल में मैं किसी साइट पर काम शुरू करने जा रहा हूं और मुझे कुछ ऐसा चाहिए जो मैं अपनी .htaccess फ़ाइल (या अन्यत्र) में जोड़ सकता हूं जो इस छद्म कोड की तरह काम करेगा: (मेरा आईपी 127.0.0.1 के स्थान पर होगा )

if (visitors_ip <> 127.0.0.1)
    redirectmatch ^(.*)$ http://www.example.com/under-construction.html

उम्मीद है कि समझ में आता है ...

0

4 उत्तर

यहां उपयोग किए गए समाधान का उपयोग किया गया है, ध्यान दें कि यह वॉनसी के समान है, सिवाय इसके कि यदि आपने उसी डोमेन पर रीडायरेक्ट करना चुना है तो उसे अनंत लूप का कारण बनता है।

RewriteEngine On
RewriteBase /
RewriteCond %{REMOTE_HOST} !^127\.0\.0\.1
RewriteCond %{REQUEST_URI} !/coming-soon\.html$ 
RewriteRule .* http://www.andrewgjohnson.com/coming-soon.html [R=302,L]

यह भी ध्यान दिया जाना चाहिए कि 302 एक अस्थायी कदम है और इसका उपयोग कुछ भी नहीं या 301 के बजाय किया जाना चाहिए।

0
जोड़ा
मैंने पूरी तरह से अपने जवाब में अपनी अतिरिक्त पुनः लिखने की स्थिति को जोड़ा है।
जोड़ा लेखक VonC, स्रोत

यह कुछ ऐसा होगा:

RewriteEngine On
RewriteBase /
RewriteCond %{REMOTE_ADDR} !^127\.0\.0\.1

RewriteCond %{REQUEST_URI} !/mypage\.html$  

RewriteRule .* http://www.anothersite.com/mypage.html [R=302,L]

एंड्रयू बताते हैं,% { यदि आप एक ही डोमेन पर रीडायरेक्ट करते हैं तो REQUEST_URI} स्थिति अनंत लूप से बचाती है।

Xorax टिप्पणियां लगभग 9 साल बाद :

आपको REMOTE_HOST का उपयोग नहीं करना चाहिए, यह कई मामलों में विफल हो जाएगा। आपको REMOTE_ADDR का उपयोग करना चाहिए।
  सीएफ " REMOTE_HOST और REMOTE_ADDR के बीच अंतर"

0
जोड़ा
@ एक्सोरैक्स धन्यवाद। मैंने अपने 9 साल के जवाब में संशोधन किया है।
जोड़ा लेखक VonC, स्रोत
अब जब आईपीवी 6 तस्वीर में है, तो मुझे लगता है कि ऐसे स्थानीय मामले हैं जहां लोकलहोस्ट आईपी पता हमेशा 1 के रूप में आता है, हमेशा 127.0.0.1 नहीं - बिल्कुल सही नहीं है कि क्यों और क्यों, लेकिन इसे संभालने के लिए मुझे लगता है कि आपको एक की जरूरत है अतिरिक्त शर्त: <कोड> रिवाइटकंड% {REMOTE_HOST}! ^ :: 1 कोलों को एस्केप की आवश्यकता नहीं होनी चाहिए - रीराइट इंजन इंजन रेगेक्स के लिए विशेष वर्ण नहीं, मुझे विश्वास नहीं है।
जोड़ा लेखक Chris Johnson, स्रोत
आपको REMOTE_HOST का उपयोग नहीं करना चाहिए, यह कई मामलों में विफल हो जाएगा। आपको REMOTE_ADDR का उपयोग करना चाहिए। दूरस्थ होस्ट और दूरस्थ addr"> stackoverflow.com/questions/3812166 के बीच जोड़ा लेखक Xorax, स्रोत

इस दृष्टिकोण से सावधान रहें।

मुझे एक्सेस सीमित करने के लिए आईपी आधारित दृष्टिकोण लेकर और मेरे आईपी पते पर पट्टे खोने से जला दिया गया है।

बेशक आप हमेशा प्रश्न में बॉक्स में एसएसएच कर सकते हैं और फिर से .htaccess फ़ाइल को बदल सकते हैं, लेकिन 5 मिनट का आतंक जब आप यह पता लगाने की कोशिश करते हैं कि अभी क्या हुआ है तो यह बिल्कुल मजेदार नहीं है अगर आप ऐसा होने की उम्मीद नहीं कर रहे हैं।

मैं आपकी विकास साइट तक पहुंचने के लिए प्रमाण-पत्रों का अनुरोध करने के लिए .htaccess (एक htpasswd फ़ाइल के साथ संयोजन के रूप में) का उपयोग करने की बजाय अनुशंसा करता हूं।

A good example of that is here: http://aplawrence.com/foo-web/htaccess-authentication.html

0
जोड़ा
हां धन्यवाद, अच्छा बिंदु लेकिन मैं इस लाइन को एक या दो सप्ताह से अधिक समय तक नहीं रखूंगा।
जोड़ा लेखक Andrew G. Johnson, स्रोत
आपके नेटवर्क की स्थापना के आधार पर, आपके पट्टे के समय उससे बहुत कम हो सकते हैं।
जोड़ा लेखक Eliza Brock Marcum, स्रोत

RewriteEngine On
# Redirect all except allowed IP
ReWriteCond %{REMOTE_ADDR} !^000\.000\.000\.001$
RewriteCond %{REMOTE_ADDR} !000\.000\.000\.002$
ReWriteCond %{REMOTE_ADDR} !^000\.000\.000\.003$
RewriteRule (.*) http://YourOtherWebsite.com/$1 [R=301,L] 

अपने WordPress ifmodule से पहले यह प्रश्न में 3 आईपी पते को छोड़कर सभी को पुनर्निर्देशित करेगा।

यदि आप अपना आईपी पता बदलते हैं तो आप बस साइट पर ftp और .htaccess फ़ाइल को संपादित करें।

0
जोड़ा