.htaccess คืออะไร?
.htaccess (Hypertext Access) เป็นไฟล์การกำหนดค่า (configuration file) ที่ใช้ควบคุมการทำงานของ Apache Web Server บนโฮสติ้งของคุณ ไฟล์นี้ช่วยให้คุณสามารถเปลี่ยนการตั้งค่าเซิร์ฟเวอร์ได้โดยไม่ต้องเข้าถึงไฟล์ httpd.conf หลักของเซิร์ฟเวอร์ .htaccess ช่วยจัดการเรื่องเกี่ยวกับการเปลี่ยนเส้นทาง (redirect) การป้องกันการเข้าถึง (access control) การบีบอัดไฟล์ (compression) และอีกมากมายผ่านทางกฎ Mod_Rewrite
โดยทั่วไปไฟล์ .htaccess อยู่ในโฟลเดอร์ public_html ของเว็บไซต์คุณในการจัดการโฮสติ้งของ DirectAdmin
วิธีเข้าถึงและแก้ไข .htaccess ผ่าน File Manager
ในการแก้ไขไฟล์ .htaccess ใน DirectAdmin ให้ทำตามขั้นตอนเหล่านี้:
- เข้าสู่บัญชี DirectAdmin ของคุณ
- คลิกที่ “File Manager” ในเมนูหลัก
- นำทางไปยังโฟลเดอร์ public_html ของโดเมนที่ต้องการแก้ไข
- มองหาไฟล์ .htaccess ในรายการไฟล์ (หากไม่พบ คุณสามารถสร้างไฟล์ใหม่ได้)
- คลิกขวาที่ไฟล์ .htaccess และเลือก “Edit” หรือคลิกไอคอนแก้ไข
- แก้ไขไฟล์ตามต้องการ จากนั้นบันทึกการเปลี่ยนแปลง
การใช้งาน .htaccess ที่นิยมใช้บ่อย
1. บังคับใช้ HTTPS Redirect
เพื่อให้ทุกการเข้าชมใช้ HTTPS แทน HTTP ให้เพิ่มโค้ดต่อไปนี้:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
2. เปลี่ยนจาก www เป็น non-www
หากต้องการให้โดเมนของคุณเข้าถึงได้โดยไม่มี www ให้ใช้:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST:9}/$1 [L,R=301]
3. กำหนดหน้าข้อผิดพลาด Custom Error Pages
เพื่อแสดงหน้า custom สำหรับข้อผิดพลาดต่างๆ:
ErrorDocument 404 /404.html
ErrorDocument 500 /500.html
ErrorDocument 403 /403.html
4. บล็อก IP Address เฉพาะ
ในการปิดกั้นการเข้าถึงจาก IP address เฉพาะ:
Order Allow,Deny
Allow from all
Deny from 192.168.1.1
Deny from 203.0.113.0
5. ป้องกันโฟลเดอร์ด้วยรหัสผ่าน
เพื่อป้องกันโฟลเดอร์ด้วยรหัสผ่าน ให้สร้างไฟล์ .htpasswd ก่อน จากนั้นใช้:
AuthType Basic
AuthName "Protected Folder"
AuthUserFile /home/username/.htpasswd
Require valid-user
6. ปิดกั้นการเข้าถึงไฟล์ที่ละเอียดอ่อน
ในการปิดกั้นการเข้าถึงไฟล์เช่น wp-config.php หรือ .env:
<Files "wp-config.php">
Order allow,deny
Deny from all
</Files>
<Files ~ "\.env$">
Order allow,deny
Deny from all
</Files>
7. เปิดใช้งาน GZIP Compression
เพื่อบีบอัดไฟล์และปรับปรุงความเร็วของเว็บไซต์:
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript
</IfModule>
8. เปิดใช้งาน Browser Caching
เพื่อให้ผู้ใช้งานสามารถโหลดเว็บไซต์ได้เร็วขึ้นจากการจำเก็บ cache ของเบราวเซอร์:
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType text/css "access plus 1 month"
ExpiresByType application/javascript "access plus 1 month"
</IfModule>
.htaccess เริ่มต้นสำหรับ WordPress
สำหรับเว็บไซต์ WordPress โดยทั่วไปจะมีไฟล์ .htaccess ที่กำหนดค่าไว้แล้วตามค่าเริ่มต้น:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
ข้อควรระวังเมื่อแก้ไข .htaccess
สำคัญ: ก่อนที่คุณจะแก้ไขไฟล์ .htaccess ให้สร้างการสำรองข้อมูล (backup) ของไฟล์นี้ไว้ก่อน การตั้งค่าที่ผิดพลาดในไฟล์ .htaccess อาจทำให้เว็บไซต์ของคุณขัดข้องหรือแสดงข้อความแสดงข้อผิดพลาด 500 Internal Server Error
หากเว็บไซต์ของคุณหลังจากแก้ไข .htaccess เกิดปัญหา คุณสามารถดาวน์โหลดไฟล์ backup ที่สร้างไว้เพื่อคืนค่าเดิมได้
สรุป
.htaccess เป็นเครื่องมือที่ทรงพลังในการจัดการการตั้งค่าเซิร์ฟเวอร์ Apache ผ่าน DirectAdmin การใช้งาน .htaccess อย่างถูกต้องจะช่วยให้คุณสามารถจัดการเรื่องความปลอดภัย (security) ประสิทธิภาพ (performance) และประสบการณ์ผู้ใช้งาน (user experience) ของเว็บไซต์ได้ดีขึ้น
หากต้องการบริการโฮสติ้งที่มีการสนับสนุนที่ดี สามารถศึกษาเพิ่มเติมได้ที่ บริการ Cloud Hosting ของ Dot Enterprise

