Nginx Proxy Proxy و Golang Setup على FreeBSD

المتطلبات

  • المعرفة الأساسية لـ UNIX.
  • FreeBSD x64 مع تثبيت Nginx.

أدوات التثبيت

ستحتاج إلى العديد من البرامج التي لم يتم شحنها مع FreeBSD. قم بتشغيل الأمر التالي لتثبيتها:

pkg install nano wget git mercurial bzr

تنزيل وتثبيت Golang

قم بتنزيل golang عن طريق تشغيل مجموعة الأوامر التالية:

cd /tmp
wget https://storage.googleapis.com/golang/go1.3.3.freebsd-amd64.tar.gz
tar -C /usr/local -xzf go1.3.3.freebsd-amd64.tar.gz

إعداد متغيرات البيئة

قم بإنشاء متغير يسمى GOPATH(والذي سيكون موقع الحزم المثبتة) وإضافته إلى مسارك:

mkdir ~/.gopkg
setenv GOPATH /root/.gopkg
set path = ($path /usr/local/go/bin /root/.gopkg/bin)

إذا كنت تريد تعيين المسار على التمهيد ، فقم بتشغيل الأمر التالي لإضافته إلى .cshrc:

echo "setenv GOPATH /root/.gopkg" >> ~/.cshrc
echo "set path = ($path /usr/local/go/bin /root/.gopkg/bin)" >> ~/.cshrc

تحقق من التثبيت

تشغيل goفي المحطة الخاصة بك. إذا ظهرت لك قائمة بالخيارات ، فهذا يعني نجاح التثبيت. قم بتشغيل الأمر التالي لتثبيت إطار عمل ويب يسمى Martini:

go get github.com/go-martini/martini

إذا لم تشاهد أي أخطاء ، فيمكنك المتابعة إلى الخطوة التالية.

إعداد مارتيني

قم بإنشاء ملف يسمى server.goوملؤه مع أسطر التعليمات البرمجية التالية:

package main

import "github.com/go-martini/martini"

func main() {
  m := martini.Classic()
  m.Get("/", func() string {
    return "Hello from Vultr VPS :)!"
  })
  m.Run()
}

عند الانتهاء ، حفظ وتشغيل go run server.go. شريطة ألا ترى أي أخطاء على جهازك ، فيمكنك المتابعة إلى الخطوة التالية.

إعداد وكيل Nginx العكسي

تكوين Nginx لعكس الوكيل لخادم Martini. في /usr/local/etc/nginx/nginx.confنظرة لل locationواستبدال محتواه داخل الأقواس مع ما يلي:

expires 8d;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_read_timeout 5m;
proxy_connect_timeout 5m;

proxy_cache_key sfs$request_uri$scheme;
proxy_pass http://127.0.0.1:3000;
proxy_redirect off;

واحد قمت بإضافة ذلك ، حفظ وتشغيل ، service nginx restartأو service nginx onerestartتشغيل go run server.go. في المستعرض الخاص بك ، أدخل http://0.0.0.0(تغيير IP وفقًا لذلك) وسترى صفحة تقول:

Hello from Vultr VPS :)!

تهانينا ، لقد نجحت في إعداد خادم وكيل Nginx عكسي مع Golang + Martini.



Leave a Comment

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

6 أشياء شديدة الجنون حول نينتندو سويتش

6 أشياء شديدة الجنون حول نينتندو سويتش

يعرف الكثير منكم أن Switch سيصدر في مارس 2017 وميزاته الجديدة. بالنسبة لأولئك الذين لا يعرفون ، قمنا بإعداد قائمة بالميزات التي تجعل "التبديل" "أداة لا غنى عنها".

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

هل تنتظر عمالقة التكنولوجيا للوفاء بوعودهم؟ تحقق من ما تبقى دون تسليم.

وظائف طبقات معمارية مرجعية للبيانات الضخمة

وظائف طبقات معمارية مرجعية للبيانات الضخمة

اقرأ المدونة لمعرفة الطبقات المختلفة في بنية البيانات الضخمة ووظائفها بأبسط طريقة.

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

اقرأ هذا لمعرفة مدى انتشار الذكاء الاصطناعي بين الشركات الصغيرة وكيف أنه يزيد من احتمالات نموها ومنح منافسيها القدرة على التفوق.

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

لقد أصبح حل CAPTCHA صعبًا جدًا على المستخدمين في السنوات القليلة الماضية. هل ستكون قادرة على أن تظل فعالة في اكتشاف البريد العشوائي والروبوتات في المستقبل القريب؟

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

مع تطور العلم بمعدل سريع ، واستلام الكثير من جهودنا ، تزداد أيضًا مخاطر تعريض أنفسنا إلى تفرد غير قابل للتفسير. اقرأ ، ماذا يمكن أن يعني التفرد بالنسبة لنا.

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

ما هو التطبيب عن بعد والرعاية الصحية عن بعد وأثره على الأجيال القادمة؟ هل هو مكان جيد أم لا في حالة الوباء؟ اقرأ المدونة لتجد طريقة عرض!

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

ربما سمعت أن المتسللين يكسبون الكثير من المال ، لكن هل تساءلت يومًا كيف يجنون هذا النوع من المال؟ دعنا نناقش.

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

أصدرت Apple مؤخرًا macOS Catalina 10.15.4 تحديثًا تكميليًا لإصلاح المشكلات ولكن يبدو أن التحديث يتسبب في المزيد من المشكلات التي تؤدي إلى إنشاء أجهزة macOS. قراءة هذه المادة لمعرفة المزيد