วิธีใช้งาน Caddy เป็นเว็บเซิร์ฟเวอร์บน Windows Server

ในการใช้งาน Caddy บน Windows Server ให้ติดตั้งไฟล์ปฏิบัติการของ Caddy สำหรับ Windows ชี้ Caddyfile ไปยังโฟลเดอร์เว็บไซต์ของคุณ และลงทะเบียน Caddy เป็นบริการของ Windows การตั้งค่านี้จะให้บริการไฟล์คงที่และสามารถขอและต่ออายุใบรับรอง HTTPS โดยอัตโนมัติสำหรับโดเมนสาธารณะ Docker เป็นตัวเลือกเสริม ขั้นตอนด้านล่างไม่จำเป็นต้องใช้รันไทม์คอนเทนเนอร์

คำสั่งเหล่านี้ใช้C:\Caddyโดเมนที่เป็นตัวแทน โปรดเรียกใช้ PowerShell ในฐานะผู้ดูแลระบบเมื่อสร้างกฎไฟร์วอลล์หรือติดตั้งบริการ

1. ดาวน์โหลด Caddy สำหรับ Windows

เปิดหน้าดาวน์โหลด Caddy อย่างเป็นทางการและเลือกเวอร์ชัน Windows ที่เหมาะสมกับสถาปัตยกรรมเซิร์ฟเวอร์ของคุณ หากคุณใช้เวอร์ชันจาก GitHub ให้เลือกไฟล์ Windows ที่ตรงกัน แตกไฟล์หรือคัดลอกcaddy.exeไปยังC:\Caddyโฟลเดอร์ที่กำหนด คู่มือการติดตั้ง Caddy ยังอธิบายเกี่ยวกับไฟล์ไบนารีแบบคงที่และการตรวจสอบลายเซ็นอีกด้วย

เมื่อเปิดโปรแกรม Windows File Explorer แล้ว จะปรากฏที่ C:\Caddy และแสดงไฟล์ caddy.exe
เก็บไฟล์ปฏิบัติการของ Caddy ไว้ในโฟลเดอร์เฉพาะ เช่น C:\Caddy

2. สร้างโฟลเดอร์เว็บไซต์

ใน PowerShell ให้สร้างไดเร็กทอรีหลักของเว็บไซต์และหน้าทดสอบขนาดเล็ก เมื่อพร้อมแล้ว ให้แทนที่ไฟล์ทดสอบนี้ด้วยไฟล์ของเว็บไซต์ของคุณ:

New-Item -ItemType Directory -Force C:\Caddy\site | Out-Null
Set-Content -Path C:\Caddy\site\index.html -Value '<h1>Hello from Caddy</h1>' -Encoding utf8
PowerShell และ File Explorer แสดงโฟลเดอร์ไซต์และไฟล์ index.html ภายใน C:\Caddy
โฟลเดอร์เว็บไซต์ประกอบด้วยหน้าเว็บที่ Caddy จะแสดงผล

3. สร้างไฟล์ Caddyfile ในเครื่องของคุณ

เปิดโปรแกรม Notepad ด้วยชื่อnotepad C:\Caddy\Caddyfileไฟล์ . หากระบบถามให้สร้างไฟล์ ให้เลือก ใช่ ป้อนการตั้งค่านี้ แล้วบันทึกไฟล์โดยCaddyfileไม่ต้องใส่.txtนามสกุล:

:8080 {
    root * C:/Caddy/site
    file_server
}

คำสั่ง นี้rootกำหนดไดเร็กทอรีและfile_serverให้บริการไฟล์ในไดเร็กทอรีนั้น พอร์ตโลคัลที่สูงช่วยให้ทดสอบได้ง่ายก่อนที่จะเปลี่ยนไปใช้พอร์ต HTTP และ HTTPS สาธารณะ ดูข้อมูลอ้างอิงrootและfile_server อย่างเป็นทางการเพิ่มเติมได้

โปรแกรม Notepad แสดงไฟล์ Caddyfile สำหรับพอร์ต 8080 พร้อมด้วย root ของเว็บไซต์ Windows และคำสั่ง file_server
ใช้เครื่องหมายทับ (/) ในเส้นทางของ Windows เพื่อให้ไฟล์ Caddyfile อ่านง่ายขึ้น

4. ตรวจสอบและทดสอบเว็บไซต์

ใน PowerShell ให้เปลี่ยนไปยังโฟลเดอร์ Caddy ตรวจสอบความถูกต้องของการตั้งค่า และเริ่ม Caddy ในโหมดทำงานเบื้องหน้า:

Set-Location C:\Caddy
.\caddy.exe validate --config .\Caddyfile
.\caddy.exe run --config .\Caddyfile

ในขณะที่หน้าต่างนั้นยังเปิดอยู่ ให้เรียกดูไปยังhttp://localhost:8080เซิร์ฟเวอร์ คุณควรจะเห็นหัวข้อทดสอบ การตรวจสอบภายในเครื่องนี้ใช้ HTTP โดยเจตนา ดังนั้นให้หยุดกระบวนการทำงานเบื้องหน้าCtrl+Cก่อนที่จะเปลี่ยนไฟล์สำหรับโดเมนสาธารณะของคุณ

PowerShell กำลังเรียกใช้ Caddy ในขณะที่เบราว์เซอร์แสดงหน้าทดสอบที่ localhost:8080
ตรวจสอบให้แน่ใจว่าหน้าเว็บทดสอบในเครื่องโหลดได้ถูกต้องก่อนที่จะเปิดเผยเซิร์ฟเวอร์สู่สาธารณะ

5. ตั้งค่าโดเมนจริงของคุณ

แก้ไขC:\Caddy\Caddyfileและแทนที่การตั้งค่าการทดสอบด้วยโดเมนและไดเร็กทอรีรูทของคุณเอง:

www.example.com {
    root * C:/Caddy/site
    file_server
}

แทนที่www.example.comด้วยโดเมนที่คุณควบคุมได้ เมื่อมีชื่อโฮสต์อยู่ในที่อยู่เว็บไซต์ Caddy สามารถจัดการใบรับรอง TLS สาธารณะและเปลี่ยนเส้นทาง HTTP ไปยัง HTTPS ได้ การออกใบรับรองอัตโนมัติจำเป็นต้องให้ชื่อโฮสต์ชี้ไปยังเซิร์ฟเวอร์นี้ และต้องมีทราฟฟิกการตรวจสอบความถูกต้องที่เกี่ยวข้องเพื่อเข้าถึงเซิร์ฟเวอร์นั้น โปรดตรวจสอบข้อกำหนด HTTPS อัตโนมัติ ของ Caddy ก่อนใช้งานจริง

โปรแกรม Notepad แสดงไฟล์ Caddyfile ที่กำหนดค่าสำหรับชื่อโดเมนและไดเร็กทอรีราก C:\Caddy\site
ให้ใช้ชื่อโฮสต์ที่ผู้เข้าชมจะป้อน ไม่ใช่ที่อยู่ภายในเครื่อง เช่น localhost

6. อนุญาตให้มีการรับส่งข้อมูลเว็บสาธารณะ

สร้างระเบียน DNS A และหากเซิร์ฟเวอร์ของคุณรองรับ IPv6 ให้สร้างระเบียน AAAA ที่ชี้โดเมนของคุณไปยังที่อยู่สาธารณะของเซิร์ฟเวอร์ ในหน้าต่าง PowerShell ที่เรียกใช้ในฐานะผู้ดูแลระบบ ให้เพิ่มกฎไฟร์วอลล์ Windows ขาเข้าสำหรับพอร์ต TCP 80 และ 443:

New-NetFirewallRule -DisplayName "Caddy HTTP and HTTPS" -Direction Inbound -Action Allow -Protocol TCP -LocalPort 80,443

นอกจากนี้ ให้เปิดพอร์ตเหล่านั้นผ่านไฟร์วอลล์บนคลาวด์ เราเตอร์ หรือกลุ่มความปลอดภัยเครือข่ายใดๆ ที่อยู่ด้านหน้าเซิร์ฟเวอร์ Caddy ใช้พอร์ต 80 สำหรับการจัดการ HTTP และการตรวจสอบ ACME ทั่วไป และพอร์ต 443 สำหรับ HTTPS พอร์ต 443 สำหรับ HTTP/3 เป็นตัวเลือกเสริม Microsoft ได้จัดทำเอกสารเกี่ยวกับคำสั่ง New-NetFirewallRule ไว้แล้ว

วิซาร์ดการตั้งค่ากฎขาเข้าของไฟร์วอลล์ Windows Defender โดยป้อนพอร์ต TCP 80 และ 443
อนุญาตให้ Caddy อนุญาตพอร์ต TCP สองพอร์ตที่จำเป็นสำหรับการรับส่งข้อมูลเว็บมาตรฐานและการตรวจสอบใบรับรอง

7. เรียกใช้ Caddy ในฐานะบริการของ Windows

คงค่าการตั้งค่าโดเมนไว้ จากนั้นเปิดหน้าต่าง PowerShell ที่มีสิทธิ์ผู้ดูแลระบบ คู่มือบริการ Caddy อย่างเป็นทางการรองรับsc.exeWinSW หรือบริการโดยตรง สำหรับบริการโดยตรง ให้ลงทะเบียนไฟล์ปฏิบัติการด้วยเส้นทางการกำหนดค่าที่ระบุอย่างชัดเจนแล้วเริ่มใช้งาน:

sc.exe create caddy start= auto binPath= '"C:\Caddy\caddy.exe" run --config C:\Caddy\Caddyfile'
sc.exe start caddy

บริการของ Windows ทำงานภายใต้บัญชีบริการ ตรวจสอบให้แน่ใจว่าบัญชีดังกล่าวสามารถอ่านไฟล์เว็บไซต์และไฟล์การกำหนดค่า และสามารถเขียนลงในไดเร็กทอรีข้อมูลถาวรของ Caddy ซึ่งจัดเก็บข้อมูลใบรับรองที่ได้รับการจัดการ อย่ามองว่าไดเร็กทอรีนั้นเป็นไดเร็กทอรีที่ใช้แล้วทิ้งได้ โปรดดูข้อกำหนดเกี่ยวกับไดเร็กทอรีของ Caddy และคำแนะนำสำหรับบริการของ Windows

PowerShell แสดงให้เห็นว่าบริการ Caddy Windows เริ่มทำงานสำเร็จแล้ว
หลังจากลงทะเบียนบริการแล้ว ให้เริ่มบริการจาก PowerShell หรือคอนโซลบริการของ Windows

8. ตรวจสอบ HTTPS และแก้ไขปัญหา

ตรวจสอบสถานะการให้บริการด้วยคำ สั่ง `serve` sc.exe query caddyจากนั้นเปิดเว็บไซต์https://www.example.comโดยใช้ชื่อโฮสต์จริงของคุณ หากเว็บไซต์ไม่โหลด ให้ตรวจสอบบันทึก DNS ไฟร์วอลล์ของ Windows และเครือข่าย และตรวจสอบว่ามีโปรแกรมอื่นครอบครองพอร์ต 80 หรือ 443 อยู่แล้วหรือไม่ คุณสามารถตรวจสอบ Listener ได้ด้วยคำสั่ง:

Get-NetTCPConnection -State Listen -LocalPort 80,443

หาก Caddy รายงานข้อผิดพลาดเกี่ยวกับใบรับรองหรือการตรวจสอบความถูกต้อง ให้ตรวจสอบว่า DNS สาธารณะชี้ไปยังเซิร์ฟเวอร์นี้ และพอร์ต TCP ขาเข้า 80 และ 443 สามารถเข้าถึงเซิร์ฟเวอร์นี้ได้ สำหรับการแก้ไขการกำหนดค่า ให้ตรวจสอบความถูกต้องของไฟล์อีกครั้ง จากนั้นโหลด Caddy ใหม่คู่มือเริ่มต้นใช้งานและคู่มือการแก้ไขปัญหาC:\Caddy\caddy.exe reload --config C:\Caddy\Caddyfileของ Caddy จะครอบคลุมการกำหนดค่าและข้อผิดพลาดเพิ่มเติม

เบราว์เซอร์แสดงเว็บไซต์ HTTPS อยู่ข้างคอนโซลบริการของ Windows โดยมี Caddy Web Server กำลังทำงานอยู่
ตรวจสอบว่าเว็บไซต์สาธารณะใช้ HTTPS และบริการ Caddy ยังคงทำงานอยู่

ฝากความเห็น

แปลงภาพถ่ายเป็นภาพวาด ภาพร่าง และการ์ตูนด้วย FotoSketcher

แปลงภาพถ่ายเป็นภาพวาด ภาพร่าง และการ์ตูนด้วย FotoSketcher

เปลี่ยนภาพถ่ายให้เป็นภาพวาด ภาพร่างดินสอ หรือการ์ตูนด้วย FotoSketcher Studio เรียนรู้วิธีเลือกเอฟเฟ็กต์ ปรับการแสดงตัวอย่าง และบันทึกผลงานของคุณ

วิเคราะห์และระบุไฟล์เสียงอย่างละเอียดด้วยโปรแกรมระบุไฟล์เสียง (Audio Identifier)

วิเคราะห์และระบุไฟล์เสียงอย่างละเอียดด้วยโปรแกรมระบุไฟล์เสียง (Audio Identifier)

เรียนรู้ว่า Audio Identifier เปิดเผยอะไรบ้างเกี่ยวกับบิตเรต ตัวเข้ารหัส และแท็ก วิธีการทำงานของเวิร์กโฟลว์แบบเดิม และเครื่องมือปัจจุบันใดบ้างที่ใช้ตรวจสอบไฟล์หรือระบุเพลง

ดัชนีรูปภาพของฉัน: โปรแกรมจัดระเบียบรูปภาพแบบโอเพนซอร์สสำหรับ Windows

ดัชนีรูปภาพของฉัน: โปรแกรมจัดระเบียบรูปภาพแบบโอเพนซอร์สสำหรับ Windows

My Photo Index เป็นโปรแกรมจัดการภาพถ่ายสำหรับ Windows รุ่นเก่า ที่ใช้สำหรับติดแท็ก ให้คะแนน และเรียกดูภาพถ่ายในเครื่อง โปรดตรวจสอบคุณสมบัติที่ระบุไว้ ข้อจำกัดด้านความเข้ากันได้ และทางเลือกอื่นที่ยังคงได้รับการพัฒนาอยู่

เปลี่ยนคุณสมบัติ วันที่ และเวลาของไฟล์และโฟลเดอร์ด้วยโปรแกรมเปลี่ยนคุณสมบัติ (Attribute Changer)

เปลี่ยนคุณสมบัติ วันที่ และเวลาของไฟล์และโฟลเดอร์ด้วยโปรแกรมเปลี่ยนคุณสมบัติ (Attribute Changer)

เรียนรู้วิธีใช้ Attribute Changer เพื่อแก้ไขคุณสมบัติและเวลาของไฟล์ใน Windows อัปเดตวันที่ EXIF ​​ของภาพถ่าย JPEG และดูตัวอย่างการเปลี่ยนแปลงแบบกลุ่มได้อย่างปลอดภัย

วิธีตั้งค่าภาพพื้นหลังที่แตกต่างกันบนแต่ละจอภาพใน Windows 10

วิธีตั้งค่าภาพพื้นหลังที่แตกต่างกันบนแต่ละจอภาพใน Windows 10

ตั้งภาพพื้นหลังแยกต่างหากสำหรับแต่ละจอภาพใน Windows 10 ระบุจอแสดงผล ปรับขนาดภาพให้พอดี และแก้ไขปัญหาตัวเลือกจอภาพที่หายไป

pViewer: โปรแกรมดูภาพขนาดเล็ก และโปรแกรมอ่านมังงะและการ์ตูน

pViewer: โปรแกรมดูภาพขนาดเล็ก และโปรแกรมอ่านมังงะและการ์ตูน

เรียนรู้ว่า pViewer ทำอะไรได้บ้าง โหมดภาพถ่ายและภาพการ์ตูนทำงานอย่างไร ควรดาวน์โหลดเวอร์ชัน Windows ใด และเวอร์ชันเก่ากับเวอร์ชันที่เขียนใหม่แตกต่างกันอย่างไร

NeoDownloader: ตั้งค่าพารามิเตอร์และดาวน์โหลดรูปภาพจากเว็บไซต์แบบเป็นชุด

NeoDownloader: ตั้งค่าพารามิเตอร์และดาวน์โหลดรูปภาพจากเว็บไซต์แบบเป็นชุด

เรียนรู้วิธีสร้างโปรเจ็กต์ NeoDownloader เลือกขอบเขตการรวบรวมข้อมูล ตั้งค่าตัวกรองรูปภาพและปลายทาง และตรวจสอบการดาวน์โหลดแบบกลุ่ม

วิธีเปลี่ยนภาพพื้นหลังเดสก์ท็อปถัดไปโดยใช้ปุ่มลัดใน Windows 7 และ 8

วิธีเปลี่ยนภาพพื้นหลังเดสก์ท็อปถัดไปโดยใช้ปุ่มลัดใน Windows 7 และ 8

ตั้งค่าสไลด์โชว์ใน Windows 7 หรือ 8 สร้างทางลัด VBScript ขนาดเล็ก และกำหนดปุ่มลัดบนแป้นพิมพ์เพื่อเลื่อนไปยังภาพพื้นหลังถัดไป

XnConvert: ใส่เอฟเฟ็กต์และแปลงรูปแบบภาพเป็นชุดๆ

XnConvert: ใส่เอฟเฟ็กต์และแปลงรูปแบบภาพเป็นชุดๆ

ใช้ XnConvert เพื่อใส่เอฟเฟ็กต์ ปรับขนาดรูปภาพ และแปลงรูปแบบภาพจำนวนมากพร้อมกัน เลือกการตั้งค่าเอาต์พุต ดูตัวอย่างการแก้ไข และปกป้องไฟล์ต้นฉบับของคุณ

ติดตามชั่วโมงทำงานและการใช้งานคอมพิวเตอร์ด้วย ManicTime

ติดตามชั่วโมงทำงานและการใช้งานคอมพิวเตอร์ด้วย ManicTime

เรียนรู้วิธีที่ ManicTime ติดตามการใช้งานแอปพลิเคชัน เวลาใช้งานและเวลาที่ไม่ได้ใช้งาน และเอกสารต่างๆ จากนั้นเปลี่ยนประวัติกิจกรรมของคุณให้เป็นแท็กโครงการและตารางเวลา