Htaccess এর মাধ্যমে কীভাবে রুট এবং কেবলমাত্র রুটকে পুনর্নির্দেশ করা যায়?


53

আমি কেবলমাত্র আমার মূলটিকে অন্য url এ পুনঃনির্দেশ করতে চাই, তবে সেগুলি যে সমস্ত / সাব / ডিরেক্টরিতে রয়েছে সেগুলি বজায় রাখতে (এবং পুনঃনির্দেশ)

উদাহরণ:

mysite.com/1 কোথাও পুনঃনির্দেশ mysys.com/admin একটি পৃষ্ঠা খোলে

আমি চাই মাইসাইট / কে আমার সেকেন্ডসাইট ডটকম-এ পুনঃনির্দেশিত করতে এবং এটি কেবল এইচটিসিএক্স ব্যবহার করে 301 পুনর্নির্দেশের সাহায্যে

উত্তর:


74

এটা চেষ্টা কর:

RewriteEngine on
RewriteCond %{HTTP_HOST} mysite\.com [NC]
RewriteCond %{REQUEST_URI} ^/$
Rewriterule ^(.*)$ http://mysecondsite.com/ [L,R=301]

যদি আপনাকে পুরানো ডোমেনটি পরীক্ষা করার প্রয়োজন না হয় (উদাহরণস্বরূপ, আপনার .htaccess ডিরেক্টরিটি শুধুমাত্র পুরানো ডোমেন দ্বারা ব্যবহৃত হয়) তবে আপনি দ্বিতীয় লাইনটি সরাতে পারেন।


1
আমার ক্ষেত্রে, আমার ট্র্যাফিকটি mysite.com- এ পুনর্নির্দেশ করা দরকার তবে foo.mysite.com নয়, সুতরাং RewriteCond %{HTTP_HOST} ^mysite\.com$ [NC]ম্যাচটি সঠিক হোস্টের জন্য নিশ্চিত করতে - লাইন ২-এ একটি রেইজেক্স যুক্ত করতে হবে
জয়গুবি

সার্ভারের ভেরিয়েবলটি পরীক্ষা করতে অতিরিক্ত শর্ত ব্যবহার না করে RewriteRule প্যাটার্নে URL- পাথটি পরীক্ষা করা (@ ডেভফোরগ্যাকের উত্তর হিসাবে) আরও দক্ষ । REQUEST_URI
মিঃ হোয়েট

38

যদি আপনি বোঝাতে চান যে আপনি কেবল "/" কে অন্য ডোমেনে পুনঃনির্দেশ করতে চান তবে এটি কাজ করবে:

RewriteEngine on
RewriteRule ^$ http://www.example.com/ [R=301,L]

এটি কেবল ডোমেনের মূলের সাথে কিছুই মিলেনি কারণ এটি কেবলমাত্র কোনও ফাইল নাম নির্দিষ্ট করে না দিয়ে ডোমেনের নাম পুনর্নির্দেশ করবে।


সামান্য প্রকরণটি আমার পক্ষে কাজ করেছিল। আমার এইচটিসেসের নীচে যুক্ত করা হয়েছে, অন্য সমস্ত বিধি নিষেধ করার পরে, আমি কেবলমাত্র আমার মূল ডোমেন (যে কোনও সাবডোমেন ছাড়াই) দেখেছি তার জন্য একটি স্বাগত পৃষ্ঠাটি রেন্ডার করতে চেয়েছিলাম: রিরাইটরকন্ড% {HTTP_HOST}! ^ (সাবডোমাইন 1 | সাবডোমাইন 2) mys। মাইসাইট \ .কম $ [এনসি] পুনর্লিখনের নিয়ম ^ wel / উপভোগ.এফপি [এনসি, এল]
মার্সএন্ডব্যাক

15

এটি ঠিক কাজ করা উচিত:

RedirectMatch 301 ^/$ https://example.com/

2
যদি আপনি ইতিমধ্যে অন্য পুনঃনির্দেশগুলির জন্য মোড_উইরাইট ব্যবহার না করে থাকেন তবে এটি বিদ্যমান (বিদ্যমান উত্তরের জন্য) হতে পারে।
মিঃ হোয়েট

-3

একটি সংক্ষিপ্ত সমাধান:

Redirect 301 / http://mysecondsite.com/

12
এটি জারডেল যা চায় তা করবে না। এটি কেবলমাত্র মূলের পরিবর্তে সমস্ত পৃষ্ঠা পুনর্নির্দেশ করবে।
শরোজ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.