একটি প্রক্সি পিছনে স্থিতি আপডেট করুন


9

আমি একটি ইন্ট্রানেটে ড্রুপাল চালাচ্ছি যা একটি সাধারণ এইচটিটিপি প্রক্সির পিছনে। আমি মডিউল এবং মূল আপডেটের চেকগুলি আসলে কাজ করতে চাই।

আমার মনে হচ্ছে ড্রুপাল 6 এ করার জন্য একটি মূল হ্যাক ছিল তবে আমি পৃষ্ঠাটি আর খুঁজে পাচ্ছি না।

কেউ কি জানেন যে আমি কীভাবে এই কাজটি করতে পারি?

উত্তর:


6

আমাদের কর্পোরেট প্রতিষ্ঠানের মধ্যে একটি ফরোয়ার্ড প্রক্সি ছিল যা ইন্টারনেটে সরাসরি অ্যাক্সেস রোধ করে, আমরা 'প্রক্সি প্যাচ' দিয়ে প্যাচিং কোরটি শেষ করেছি (এইভাবে এই নামকরণ করা হয়েছে কারণ 2004 থেকে এই সমস্যাটি উন্মুক্ত হয়েছে - http://drupal.org/ নোড / 7881 )।

http://drupal.org/node/7881#comment-4134240 - ড্রুপাল 7 এর জন্য একটি প্যাচ রয়েছে http://drupal.org/node/7881#comment-2446280 - ড্রুপাল 6 এর জন্য একটি প্যাচ রয়েছে

একবার প্যাচ ইনস্টল হয়ে গেলে, আপনি প্রক্সি মাধ্যমে সমস্ত প্রশ্ন প্রেরণের জন্য drupal_http_request () পরিবর্তন করতে সক্ষম হবেন।

এইভাবে ইন্টারনেটে অ্যাক্সেসের প্রয়োজনীয় সমস্ত মডিউলগুলি প্রত্যাশা অনুযায়ী কাজ করবে, যেমন আপডেট স্ট্যাচু, অ্যাগ্রিগেটর, ওপেনআইডি ইত্যাদি

আপডেট : প্যাচটি ইতিমধ্যে দ্রুপাল 7 ট্রাঙ্কে মিশ্রিত হয়েছে ( https://drupal.org/comment/6425278#comment-6425278 ), এবং আশা করি দ্রুপাল 7.16 এর সাথে বেরিয়ে আসবে


নিখুঁত - একই পৃষ্ঠায় আমি ডি 6 প্রক্সি প্যাচ পেয়েছিলাম, তবে মনে হয় আমি এটি মিস করেছি - ধন্যবাদ
ফ্রেডেরিক

2

রেফারেন্সের জন্য, এটি এখন সিনট্যাক্স যা আপনি এখন কোনও প্রক্সি ( ডিফল্ট.সেটেটিংস / পিএফ / 7 থেকে ) চালানোর জন্য এটি কনফিগার করতে ড্রুপালে ব্যবহার করতে পারেন :

/**
 * External access proxy settings:
 *
 * If your site must access the Internet via a web proxy then you can enter
 * the proxy settings here. Currently only basic authentication is supported
 * by using the username and password variables. The proxy_user_agent variable
 * can be set to NULL for proxies that require no User-Agent header or to a
 * non-empty string for proxies that limit requests to a specific agent. The
 * proxy_exceptions variable is an array of host names to be accessed directly,
 * not via proxy.
 */
# $conf['proxy_server'] = '';
# $conf['proxy_port'] = 8080;
# $conf['proxy_username'] = '';
# $conf['proxy_password'] = '';
# $conf['proxy_user_agent'] = '';
# $conf['proxy_exceptions'] = array('127.0.0.1', 'localhost');

1

For এর জন্য একটি মডিউল আছে

এটি বর্তমানে কেবল ড্রুপাল 6, তবে এটি একটি ভাল সূচনা পয়েন্ট সরবরাহ করা উচিত।


আপনি ড্রুপাল 7 সংস্করণ তৈরি যত্ন? (আমি বিশ্বাস করতে পারি না যে কেউ এখনও দ্রুপাল with দিয়ে নতুন সাইটগুলি ঘুরছে)
আইকনোক্লাস্ট

1

স্টেজিং পিবিএস সমাধান করার জন্য, আমি স্থানীয়ভাবে আসল প্রোডাকশন ডোমেন নেম নিয়ে কাজ করছি তবে একটি প্রক্সিের পিছনে যাতে ড্রুপাল ইনস্টলেশন এবং ওয়েব সার্ভারের কনফিগারেশনটি কঠোরভাবে অভিন্ন (কিছু কনফের উপর আইপি শ্রবণটি ভিন্ন হতে পারে, শ্রোতার আইপি উপর নির্ভর করে উত্পাদন)।

তাই, আমি একটি প্রক্সি জন্য সাড়া ছিল HTTP: //mydomain.local , এর প্রক্সি করার HTTP: //www.mydomain.tld , কিন্তু একটি স্থানীয় IP এর উপর।

স্থানীয় ভোস্ট কনফে'র সাথে এনজিঙ্ক্স:

server_name  mydomain.local;
set $proxied_server_name www.mydomain.tld;
set $proxied_cookie_domain mydomain.tld;

# then generic proxy conf
proxy_set_header Host              $proxied_server_name;
proxy_set_header X-Real-IP         $remote_addr;
proxy_set_header X-Forwarded-For   $proxy_add_x_forwarded_for;

# My param added for drupal absolute url construction
proxy_set_header X-Proxy-Host      $host;               

# For headers rewriting (Location or Refresh)
proxy_redirect   http://$proxied_server_name/ http://$host/;

proxy_cookie_domain $proxied_server_name $host;  
# and for drupal auth, with cookies without sub-domain
proxy_cookie_domain $proxied_cookie_domain $host;

প্রক্সাইড ভোস্টের জন্য, ঠিক যেমন উত্পাদনে

server_name  www.mydomain.tld;

এবং আমার সেটিংস.এফপি

if (isset($_SERVER['HTTP_X_PROXY_HOST'])) {
  $base_url = 'http://' .$_SERVER['HTTP_X_PROXY_HOST'];
}

এই বিভ্রান্তির সাহায্যে, আমি সমস্ত ড্রুপাল ফাইল এবং ডাটাবেস এবং সার্ভার কনফিগারেশনকে অনেকগুলি ড্রুপাল ইনস্টলেশন (আমার ক্ষেত্রে দেব এবং উত্পাদন তবে আপনি যা চান তা হতে পারে) এর মধ্যে সিঙ্ক করতে পারি।

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