คู่มือการแก้ไขปัญหาเซิร์ฟเวอร์เว็บ ServBay
ServBay รองรับการใช้ Caddy, NGINX, และ Apache เป็นเซิร์ฟเวอร์เว็บเริ่มต้น มอบความยืดหยุ่นสำหรับการพัฒนาเว็บในเครื่องคุณ ระหว่างการใช้งาน อาจพบปัญหาเว็บไซต์เข้าไม่ได้ โหลดช้า หรือเกิดข้อผิดพลาดเช่น 500 Internal Server Error คู่มือนี้ช่วยคุณวินิจฉัยและแก้ไขข้อผิดพลาดยอดนิยมของเซิร์ฟเวอร์เว็บในสภาพแวดล้อม ServBay
เครื่องมือวินิจฉัยปัญหาในตัว ServBay
ServBay มีเครื่องมือวินิจฉัยปัญหา ที่ทรงพลัง ช่วยตรวจสอบและแจ้งเตือนข้อผิดพลาดการตั้งค่าหรือบริการต่าง ๆ อัตโนมัติ ขอแนะนำให้ใช้เครื่องมือนี้ก่อนทุกครั้งที่พบปัญหา
เปิดแอป ServBay จากเมนูด้านซ้าย เลือก 故障诊断
เพื่อใช้งานเครื่องมือวินิจฉัยปัญหา
เครื่องมือนี้จะตรวจสอบสถานะคอมโพเนนต์หลักของ ServBay การใช้พอร์ต ความถูกต้องของไฟล์การตั้งค่า ฯลฯ พร้อมเสนอคำแนะนำในการแก้ไขปัญหา
เว็บไซต์โหลดช้าครั้งแรกหลังย้ายจาก MAMP หรือ Laravel Herd
หากเปลี่ยนจาก MAMP หรือ Laravel Herd มาใช้ ServBay แล้วพบว่าเมื่อเว็บไซต์ถูกปล่อยทิ้งไว้แล้วเข้าใช้งานครั้งแรกต้องรอนานเกิน 5 วินาที แต่การเข้าอื่น ๆ ต่อจากนั้นกลับเร็วปกติ หากปล่อยทิ้งไว้อีกครั้ง เมื่อเข้าใหม่จะช้ามากอีก
อาการของปัญหา
เปิด Chrome Developer Tools (กด F12
หรือ Cmd+Option+I
) เลือกแท็บ Network รีเฟรชหน้า แล้วคลิกที่ request เพื่อดูข้อมูล Timing พบว่า DNS Lookup ใช้เวลาประมาณ 5 วินาที
(ตัวอย่าง: ตรวจสอบเวลาการค้นหา DNS ในแท็บ Network ของ Developer Tools)
สาเหตุของปัญหา
MAMP และ Laravel Herd จะปรับตั้งค่า DNS บน macOS โดยสร้างไฟล์ตั้งค่าพิเศษเพื่อเปลี่ยนเส้นทางโดเมนเฉพาะ เช่น *.test
หรือ *.local
ไฟล์เหล่านี้อยู่ที่ /etc/resolver/
ถึงจะถอนการติดตั้ง MAMP หรือ Laravel Herd แล้ว ไฟล์เหล่านี้อาจยังเหลืออยู่ในระบบ เมื่อเข้าเว็บที่ใช้โดเมนลงท้ายด้วย .test
หรือ .local
macOS จะลองแก้ไข DNS ด้วยไฟล์เก่านี้ก่อน แต่บริการ DNS ของ MAMP/Herd ไม่มีอยู่แล้ว จึงต้องรอหมดเวลา (timeout) ประมาณ 5 วินาที จึงจะกลับไปใช้ DNS ปกติของระบบ
วิธีแก้ไข
ดำเนินการตามขั้นตอนด้านล่างเพื่อกำจัดไฟล์ตั้งค่า DNS ที่หลงเหลือจาก MAMP หรือ Laravel Herd:
1. ถอนการติดตั้ง MAMP หรือ Laravel Herd ให้ครบถ้วน
หากยังไม่ได้ถอนการติดตั้งอย่างสมบูรณ์ ใช้ตัวถอนการติดตั้งอย่างเป็นทางการ หรือสคริปต์ของแต่ละโปรแกรม
ถอนการติดตั้ง MAMP:
- ใช้ฟีเจอร์ถอนการติดตั้งในแอป MAMP
- หรือ ลบ
/Applications/MAMP
ด้วยตนเอง และล้างไฟล์ตั้งค่า
ถอนการติดตั้ง Laravel Herd:
bash
# ใช้คำสั่งถอนติดตั้งของ Herd
herd uninstall
# ถ้าใช้ไม่ได้ ลบไฟล์ด้วยตนเอง
rm -rf ~/Library/Application\ Support/Herd
rm -rf ~/.config/herd
1
2
3
4
5
6
2
3
4
5
6
2. ลบไฟล์ที่หลงเหลือในโฟลเดอร์ /etc/resolver
แม้จะถอนการติดตั้งแอปแล้ว ไฟล์ที่ /etc/resolver/
ยังอาจคงอยู่ ต้องลบออกเอง:
bash
# ดูไฟล์ใน /etc/resolver
ls -la /etc/resolver
# ลบไฟล์ resolver สำหรับ test และ local
sudo rm /etc/resolver/test
sudo rm /etc/resolver/local
# หากมีไฟล์อื่นที่สร้างโดย MAMP/Herd ก็ลบด้วย
# เช่น: sudo rm /etc/resolver/herd
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
ไฟล์ resolver ที่พบได้บ่อยจาก MAMP/Herd:
test
– ใช้กับ*.test
local
– ใช้กับ*.local
herd
– ของ Laravel Herd
หมายเหตุ: การลบไฟล์เหล่านี้ต้องใช้สิทธิ์ผู้ดูแลระบบ (sudo
)
3. หลีกเลี่ยงการใช้โดเมน *.local
macOS สำรองโดเมนลงท้ายด้วย .local
สำหรับโครงข่าย LAN โดยใช้ mDNS/Bonjour หากใช้กับเว็บพัฒนาในเครื่อง อาจเกิด:
- ขัดแย้ง DNS
- โหลดเว็บช้า
- พฤติกรรมเครือข่ายที่ไม่สามารถทำนายได้
ข้อแนะนำ: ใช้โดเมนลงท้ายอื่น เช่น
.test
- เหมาะสำหรับทดสอบ.localhost
- ชี้ไปยังเครื่อง local ได้แน่นอน.dev
- เป็น TLD จริงแต่ใช้พัฒนา local ได้ทั่วไป- หรือใช้ suffix ที่ ServBay แนะนำ
4. ล้างแคช DNS (ทางเลือก)
หลังดำเนินการข้างต้น แนะนำให้ล้างแคช DNS:
bash
# macOS Big Sur (11) และใหม่กว่า
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
# macOS Catalina (10.15) และเก่ากว่า
sudo killall -HUP mDNSResponder
1
2
3
4
5
2
3
4
5
5. ตรวจสอบผลการแก้ไข
เมื่อจัดการเสร็จแล้ว ทดสอบเว็บไซต์ของคุณ:
- เข้าเว็บไซต์ local ของ ServBay ผ่านเบราว์เซอร์
- เปิด Chrome Developer Tools → Network
- รีเฟรชหน้า ดูส่วน Timing ของ request
- ตรวจสอบให้ DNS Lookup ไม่เกิน 50ms
หากยังมีปัญหา ให้ตรวจสอบว่ามีซอฟต์แวร์อื่น (เช่น VPN หรือโปรแกรม proxy) รบกวนการแก้ไข DNS หรือไม่
ตรวจสอบไฟล์การตั้งค่าเซิร์ฟเวอร์เว็บ
ข้อผิดพลาดในไฟล์การตั้งค่าเซิร์ฟเวอร์มักเป็นสาเหตุหลักที่เว็บเข้าไม่ได้ ServBay มีเครื่องมือเฉพาะสำหรับตรวจสอบไวยากรณ์แต่ละเซิร์ฟเวอร์
ตรวจสอบ Caddyfile
ใช้คำสั่ง validate
ของ Caddy เพื่อตรวจสอบความถูกต้องของไฟล์ Caddyfile
bash
# macOS
/Applications/ServBay/bin/caddy validate -c /Applications/ServBay/etc/caddy/Caddyfile
# Windows
C:\ServBay\bin\caddy.exe validate -c C:\ServBay\etc\caddy\Caddyfile
1
2
3
4
5
2
3
4
5
ถ้าไวยากรณ์ถูกต้องจะเห็นผลลัพธ์เป็น Valid configuration
หากมีข้อผิดพลาดจะระบุปัญหาในข้อความ
หมายเหตุ: คำสั่ง caddy validate
จะแสดงข้อความ INFO
หรือ WARN
จำนวนมาก ซึ่งมักเป็นข้อมูลการโหลดฟีเจอร์ภายใน ไม่ได้ชี้ถึงข้อผิดพลาดจริง ตราบใดที่เห็น Valid configuration
ถือว่าไวยากรณ์ถูกต้อง
ตัวอย่างข้อผิดพลาดทั่วไปของ Caddyfile:
ไฟล์ certificate ไม่พบ:
bash# ตัวอย่างบน macOS 2024/12/09 17:24:16.970 INFO using config from file {"file": "/Applications/ServBay/etc/caddy/Caddyfile"} ... (INFO/WARN อื่น ๆ) ... Error: loading http app module: provision http: getting tls app: loading tls app module: provision tls: loading certificates: open /Applications/ServBay/ssl/private/tls-certs/mail.servbay.host/mail.servbay.host.1crt: no such file or directory # ตัวอย่างบน Windows 2024/12/09 17:24:16.970 INFO using config from file {"file": "C:\\ServBay\\etc\\caddy\\Caddyfile"} ... (INFO/WARN อื่น ๆ) ... Error: loading http app module: provision http: getting tls app: loading tls app module: provision tls: loading certificates: open C:\\ServBay\\ssl\\private\\tls-certs\\mail.servbay.host\\mail.servbay.host.1crt: no such file or directory
1
2
3
4
5
6
7
8
9หากเห็นข้อความ
loading certificates: open xxxxx: no such file or directory
หมายถึงตั้งค่าที่อยู่ไฟล์ SSL certificate ใน Caddyfile ผิดหรือไฟล์ไม่มีอยู่จริง ตรวจสอบที่อยู่ไฟล์ certificate (.crt
/.cer
/.pem
) และไฟล์ private key (.key
) ให้ถูกต้อง และไฟล์ต้องมีอยู่จริง ServBay รองรับนำเข้า certificate เองหรือขออัตโนมัติผ่าน ACME ตรวจสอบการตั้งค่าที่เกี่ยวข้องกับ SSL ใน ServBayปัญหาที่อยู่โฟลเดอร์เว็บไซต์ (มีช่องว่าง):
bash# ตัวอย่างบน macOS 2024/12/09 17:26:37.371 INFO using config from file {"file": "/Applications/ServBay/etc/caddy/Caddyfile"} Error: adapting config using caddyfile: parsing caddyfile tokens for 'root': too many arguments; should only be a matcher and a path, at /Applications/ServBay/etc/caddy/Caddyfile:1388 # ตัวอย่างบน Windows 2024/12/09 17:26:37.371 INFO using config from file {"file": "C:\\ServBay\\etc\\caddy\\Caddyfile"} Error: adapting config using caddyfile: parsing caddyfile tokens for 'root': too many arguments; should only be a matcher and a path, at C:\\ServBay\\etc\\caddy\\Caddyfile:1388
1
2
3
4
5
6
7ข้อผิดพลาด
parsing caddyfile tokens for 'root': too many arguments
เกิดจากที่อยู่โฟลเดอร์เว็บไซต์มีช่องว่าง ตัวอย่างเช่น- macOS:
root * /Applications/ServBay/www/public web
"public web"
จะถูกแยกเป็นสอง argument - Windows:
root * C:\ServBay\www\public web
"public web"
ถูกแยกเช่นเดียวกัน
วิธีที่ถูกต้องคือต้องใส่ที่อยู่ในเครื่องหมายอัญประกาศคู่
" "
เช่น- macOS:
root * "/Applications/ServBay/www/public web"
- Windows:
root * "C:\ServBay\www\public web"
คำแนะนำ: เพื่อป้องกันปัญหานี้ ควรหลีกเลี่ยงใช้ช่องว่างหรืออักขระพิเศษในชื่อไฟล์/โฟลเดอร์ ใช้
-
หรือ_
เพื่อแบ่งคำ เช่นpublic-folder
หรือpublic_dir
- macOS:
ข้อผิดพลาด Rewrite rule:
หากคัดลอกกฎ Rewrite จาก NGINX โดยตรงหรือใช้ไวยากรณ์ไม่ถูกต้องใน Caddyfile จะตรวจสอบไม่ผ่าน ควรดู เอกสาร Rewrite module ของ Caddy หรืออ่านคู่มือย้ายเว็บไซต์จาก NGINX สู่ ServBay เพื่อแน่ใจว่าไวยากรณ์ถูกต้อง
ตรวจสอบการตั้งค่า NGINX
ตรวจสอบไวยากรณ์และความถูกต้องของไฟล์ตั้งค่าด้วยพารามิเตอร์ -t
bash
# macOS
/Applications/ServBay/bin/nginx -t
# Windows
C:\ServBay\bin\nginx.exe -t
1
2
3
4
5
2
3
4
5
ถ้าถูกต้องจะพบข้อความแบบนี้
# macOS
nginx: the configuration file /Applications/ServBay/etc/nginx/nginx.conf syntax is ok
nginx: configuration file /Applications/ServBay/etc/nginx/nginx.conf test is successful
# Windows
nginx: the configuration file C:\ServBay\etc\nginx\nginx.conf syntax is ok
nginx: configuration file C:\ServBay\etc\nginx\nginx.conf test is successful
1
2
3
4
5
6
7
2
3
4
5
6
7
หากผิดจะระบุไฟล์และบรรทัดที่มีปัญหา ข้อผิดพลาดที่พบบ่อยได้แก่:
- ข้อผิดพลาดไวยากรณ์: เช่น ลืม
;
หรือปีกกา}
ไม่ครบ - ที่อยู่ไฟล์ผิด: ในคำสั่ง
include
หรืออื่น ๆ ระบุไฟล์หรือโฟลเดอร์ผิดหรือไม่มีอยู่จริง - พอร์ตซ้ำซ้อน: ตั้งค่าฟังพอร์ตที่มีโปรแกรมอื่นใช้อยู่
ตรวจสอบการตั้งค่า Apache
ใช้คำสั่ง apachectl configtest
เพื่อตรวจสอบไฟล์ตั้งค่าของ Apache
bash
# macOS
/Applications/ServBay/bin/apachectl configtest
# Windows
C:\ServBay\bin\httpd.exe -t
1
2
3
4
5
2
3
4
5
ถ้าไฟล์ถูกต้องจะขึ้น Syntax OK
หากผิดจะมีรายละเอียดของข้อผิดพลาด ข้อผิดพลาดที่พบบ่อย:
- โหลด Module ไม่สำเร็จ: Module ที่ใช้ในไฟล์ (
LoadModule
) ไม่พบหรือที่อยู่ผิด - ไวยากรณ์ .htaccess ผิด: ไฟล์
.htaccess
ในโฟลเดอร์เว็บมีปัญหา ทำให้ตรวจสอบไม่ผ่านหรือเปิดเว็บบางโฟลเดอร์ไม่ได้ - สิทธิ์โฟลเดอร์ผิด: คำสั่ง
Directory
,Files
ในไฟล์ตั้งค่ากำหนดสิทธิ์ไว้ไม่ถูกต้อง (Require
,Allow
,Deny
) ก่อให้เกิดปัญหาเข้าเว็บไม่ได้
วิธีแก้ไขข้อผิดพลาด 500 Internal Server Error
500 Internal Server Error คือสถานะ HTTP ทั่วไป ที่เซิร์ฟเวอร์พบปัญหาไม่คาดคิดระหว่างประมวลผลเว็บ ปกติจะเกิดกับโค้ดฝั่งหลังบ้าน เช่น PHP, Python, Node.js
ขั้นตอนตรวจสอบเบื้องต้น
เมื่อพบข้อผิดพลาด 500 ให้ดำเนินการตามนี้:
ตรวจสอบ log ข้อผิดพลาดของเซิร์ฟเวอร์เว็บ: เป็นขั้นแรกที่ควรทำ log จะระบุรายละเอียดเช่น error ของสคริปต์ ไฟล์ไม่พบ ปัญหาสิทธิ์
บน macOS:
- Caddy:
/Applications/ServBay/var/logs/caddy/error.log
- NGINX:
/Applications/ServBay/var/logs/nginx/error.log
- Apache:
/Applications/ServBay/var/logs/apache/error.log
บน Windows:
- Caddy:
C:\ServBay\var\logs\caddy\error.log
- NGINX:
C:\ServBay\var\logs\nginx\error.log
- Apache:
C:\ServBay\var\logs\apache\error.log
ดูบรรทัดล่าสุดที่มี
error
หรือcritical
- Caddy:
ตรวจสอบว่า backend (เช่น PHP-FPM) ทำงานอยู่หรือไม่: ถ้าใช้ PHP เว็บจะใช้ PHP-FPM ตรวจสอบด้วย
bashps aux | grep php-fpm
1หาแถวที่มี
php-fpm: master process
หรือphp-fpm: pool www
ถ้าไม่พบแสดงว่า PHP-FPM ไม่ทำงานหรือ crash ให้เปิดผ่าน UI ของ ServBay หรือสั่งผ่านservbayctl
ดู log error ฝั่ง backend (เช่น PHP): ถ้า log เซิร์ฟเวอร์บอกว่า FastCGI หรือ backend error ต้องไปดู error log ฝั่งภาษา backend
ตำแหน่ง PHP error log:
- macOS:
/Applications/ServBay/var/logs/php/php_error.log
- Windows:
C:\ServBay\var\logs\php\php_error.log
ดู error log สำหรับ
Fatal error
,Parse error
,Warning
,Notice
โดยเฉพาะ error ที่ตรงกับสคริปต์ที่เรียกใช้งาน สำหรับ production ควรปิดdisplay_errors
ส่วน dev เปิดดู detail ได้ (แก้ที่php.ini
)- macOS:
ตรวจสอบสิทธิ์ไฟล์และโฟลเดอร์: เซิร์ฟเวอร์เว็บมักทำงานภายใต้ user เฉพาะ ต้องมีสิทธิ์อ่านไฟล์/โฟลเดอร์เว็บ และเขียนโฟลเดอร์/upload หรือ log
บน macOS:
bashls -la /Applications/ServBay/www/your-site/
1user เช่น
_www
ต้องมีสิทธิ์อ่านโฟลเดอร์ root เว็บและไฟล์ย่อย หากเกี่ยวข้องกับ upload/log ต้องมีสิทธิ์เขียน ใช้chmod
และchown
แก้สิทธิ์/เจ้าของไฟล์บน Windows:
cmddir C:\ServBay\www\your-site
1ตรวจสอบสิทธิ์จาก tab ความปลอดภัยใน Properties ให้ user ที่รัน ServBay เข้าถึงได้
จุดเน้นในการตรวจสอบ 500 ของแต่ละเซิร์ฟเวอร์
Caddy:
- FastCGI: ตรวจสอบคำสั่ง
php_fastcgi
หรือreverse_proxy
ใน Caddyfile ว่าชี้ไปที่ที่อยู่ของ PHP-FPM (เช่น127.0.0.1:9000
หรือunix:/path/to/php-fpm.sock
) - สถานะ PHP-FPM: ตรวจสอบว่าใช้เวอร์ชัน PHP ที่ตรงกับเว็บ และ PHP-FPM ทำงานอยู่
- การตั้งค่าตัวแทน (Reverse Proxy): ถ้าใช้
reverse_proxy
กับ backend อื่น (Node.js ฯลฯ) ตรวจสอบที่อยู่และพอร์ต และ backend ทำงานปกติ
- FastCGI: ตรวจสอบคำสั่ง
NGINX:
fastcgi_pass
: ตรวจสอบที่อยู่ในnginx.conf
หรือไฟล์ site config ของfastcgi_pass
ว่าถูกต้องclient_max_body_size
: หากพบ 500 เมื่อ upload ไฟล์ใหญ่ อาจค่าตรงนี้น้อยเกินไป ต้องเพิ่มtry_files
: ตรวจว่าคำสั่งนี้หาชื่อไฟล์ index หรือส่ง request ไป FastCGI ถูกต้อง
Apache:
mod_rewrite
: ถ้ามี.htaccess
rewriting เปิดใช้mod_rewrite
แล้ว- เนื้อหา .htaccess: ข้อผิดพลาดในไฟล์นี้ (โดยเฉพาะ RewriteRule) ทำให้เกิด 500 ได้ ตรวจสอบ syntax
- ตั้งค่า AllowOverride: ตรวจที่ไฟล์ config ของ Apache ว่า AllowOverride สำหรับโฟลเดอร์เว็บเป็น
All
หรืออย่างน้อยมีFileInfo
กับLimit
เพื่อให้คำสั่งใน.htaccess
มีผล
การจัดการบริการ
เมื่อแก้ไขไฟล์ตั้งค่าหรือ backend แล้ว ควรรีสตาร์ทเซิร์ฟเวอร์เว็บหรือบริการที่เกี่ยวข้องเพื่อให้การเปลี่ยนแปลงมีผล
รีสตาร์ทบริการ
ใช้คำสั่ง servbayctl restart
เพื่อรีสตาร์ทบริการเว็บเซิร์ฟเวอร์ที่ต้องการ
bash
# รีสตาร์ท Caddy
servbayctl restart caddy -all
# รีสตาร์ท NGINX
servbayctl restart nginx -all
# รีสตาร์ท Apache
servbayctl restart apache -all
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
พารามิเตอร์ -all
จะรีสตาร์ทบริการเกี่ยวข้อง เช่นสั่งรีสตาร์ท Caddy/NGINX/Apache ถ้าใช้ FastCGI ก็สั่ง PHP-FPM ด้วย
ตรวจสอบสถานะบริการ
ใช้คำสั่ง servbayctl status
เพื่อดูสถานะการทำงานของบริการ
bash
# ดูสถานะ Caddy
servbayctl status caddy -all
# ดูสถานะ NGINX
servbayctl status nginx -all
# ดูสถานะ Apache
servbayctl status apache -all
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
ผลลัพธ์จะแสดงว่าบริการ running
(กำลังทำงาน), stopped
(หยุดแล้ว) หรือสถานะอื่น ๆ ช่วยให้วิเคราะห์ได้ว่าบริการเริ่มทำงานสำเร็จหรือยัง
ขั้นตอนตรวจสอบปัญหาแบบขั้นสูง
หากวิธีข้างต้นยังแก้ปัญหาไม่ได้ ลองวิธีลึกขึ้นดังนี้:
- ใช้เครื่องมือ developer บนเบราว์เซอร์: เปิด F12 ไปที่แท็บ
Console
และNetwork
เพื่อดู error ฝั่งหน้าเว็บ status code, header และ body จาก request ช่วยแยกปัญหาว่าอยู่ที่ frontend หรือ backend - ใช้คำสั่ง
curl -v
: บน terminal พิมพ์curl -v your-website.servbay.demo
(your-website.servbay.demo
แทนด้วยโดเมนจริงใน ServBay) ดูรายละเอียด header, SSL/TLS ฯลฯ เพื่อวิเคราะห์ปัญหาการเชื่อมต่อ - ปิด firewall ชั่วคราว: บางครั้ง firewall ในเครื่องหรือซอฟต์แวร์รักษาความปลอดภัยอาจบล็อกการเชื่อมต่อ ทดลองปิดแล้วทดสอบ หากผ่าน ให้ตรวจสอบ rule ว่าพอร์ตที่ ServBay ใช้ (80, 443 ฯลฯ) ได้รับอนุญาต
- ทดสอบบน browser หรืออุปกรณ์อื่น ๆ: เข้าเว็บผ่าน browser ต่างกัน หรืออุปกรณ์อื่น เพื่อยืนยันว่าปัญหาไม่เกิดจาก cache หรือการตั้งค่าของ device
- ตรวจสอบการตั้งค่า DNS หรือ hosts file ในเครื่อง: หากใช้โดเมน custom (ไม่ใช่
localhost
หรือ IP) ให้เช็กไฟล์ hosts หรือ DNS local ว่าโดเมนชี้ไปที่127.0.0.1
หรือ::1
- macOS:
/etc/hosts
- Windows:
C:\Windows\System32\drivers\etc\hosts
- macOS:
สรุป
ปัญหาเซิร์ฟเวอร์เว็บคือสิ่งที่พบได้บ่อยในการพัฒนาเว็บในเครื่อง การตรวจสอบไวยากรณ์ไฟล์ตั้งค่า วิเคราะห์ error log เช็กสถานะบริการ และควบคุมสิทธิ์ไฟล์/โฟลเดอร์ สามารถแก้ปัญหาได้เกือบทั้งหมด เครื่องมือวินิจฉัยในตัว ServBay และคำสั่ง servbayctl
เป็นผู้ช่วยที่ดี หากพบปัญหาซับซ้อนควรอ่านเอกสารใน ServBay เพิ่มเติม หรือ ติดต่อฝ่ายสนับสนุนทางเทคนิคเพื่อขอความช่วยเหลือ