استفاده از caddy به عنوان وب سرویس در لینوس

8/9/2024 Go(golang)
321

برای استفاده از وب سرویس ها معمولا از nginx استفاده میکردم البته دوستانی که worpress کار میکردن از اپاچی به عنوان وب سرویس تا جایی هست استفاده میکردند ، در مزایای caddy مطالبی خودنم و تصمیم گرفتم سرور لینوکی که داشتم رو با caddy کانفیگ کنم 

دو تا مطلب داشت اول اینکه در پوشه /etc/caddy/ یک فایل هست که تنظیمات پیشفرض cadyy قرار دارد من اون رو با دستور 

mv Caddyfile Caddyfile.dist

جابجا کردم و فایل caddy خودم رو ایجاد کردم

vi Cadyfile

و این فایل تنظیمات caddyfile

لطفا دقت کنید Caddyfile با حرف بزرگ C شروع میشود 

{
        email myemail@gmail.com
}

# Serve static files with caching
(static) {
        @static {
                file
                path *.ico *.css *.gif *.js *.jpg *.jpeg *.png *.svg *.woff *.json
        }
        header @static Cache-Control max-age=5184000
}

(security) {
        header {
        # enable HSTS
        Strict-Transform-Security max-age=31536000;
        # disable clients for sniffing media type
        X-Content-Type-Options nosniff
        # keep referre data off of http connection
        Referrer-Policy no-referrer-when-downgrade
        }
}

import conf.d/*.conf

خوب یک پوشه ایجاد کردیم همانطور که کد بالا هم نوشتیم تنظیمات را از هر فایلی که پسوند .conf دارد بخواند

mkdir  conf.d

و داخل آن فایلی به نام پروژه با پسوند conf ایجاد کردم 

تنظیمات آن به این صورت 

www.mysite.ir {
        encode zstd gzip
        import static
        import security

        log {
                output file /var/www/mysite/log/caddy-access.log
                format json
        }

        reverse_proxy http:loalhost:4000
}

بعد از ان باید caddy را ریست میکردم 

چیزی که خطا میداد فرمت  log بود که فبلش بود : format single_field common_log که برای ریست کردن caddy خطا داشت و بعد از اصلاح به صورت بالا شد .

sudo systemctl restart caddy

 بعد برای دیدن نتیجه 

sudo systemctl status caddy.service