0022 | สร้าง subdomain แบบสิ้นคิด
เล่นง่ายมากเลยครับวันนี้
พี่เอก bluegy.com ให้มา config แปลงจาก subfolder เป็น subdomain
สมมติ URL เดิม http://www.icez.net/blog/
ก็ให้มันเข้าจาก http://blog.icez.net/ แทนได้เลย
เราก็นึกก่อนเลย htaccess rewrite เอาก็จบ เสร็จแล้วก็เลยสิ้นคิดมากมาย
นั่ง search หาข้อมูลกันแบบงงๆ เล็กน้อย มั่วเอาจาก wordpress mu
สุดท้ายก็ได้ตัว .htaccess ตัวนี้มาครับ
RewriteEngine On
RewriteBase /RewriteCond %{REQUEST_URI} !\.php$
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule . – [L]RewriteCond %{HTTP_HOST} !www.icez.net
RewriteCond %{HTTP_HOST} !^icez.net
RewriteCond %{HTTP_HOST}<>%{REQUEST_URI} ^([^.]+)\.icez\.net(:80)?<>/([^/]*) [NC]
RewriteCond %1<>%3 !^(.*)<>\1$ [NC]
RewriteRule ^(.*)$ /%1/$1 [L,QSA]
เจอปัญหาอย่างนึงว่า ถ้าสมมติเข้าเว็บ อย่าง http://something.icez.net/
แล้วไม่มี folder ชื่อนี้อยู่ในระบบเนี่ย
มันจะเด้งหน้า Internal Server Error ขึ้นมาเลย
แก้ได้แล้วค้าบบบบ ไม่เจอแล้ว เย้ๆๆๆๆๆๆๆๆๆ
(ถ้าไม่เจอ subdomain จะขึ้นหน้า 404 ธรรมดาแทน)
อ้อ ถ้าใครจะเอาไปทำ อย่าลืมเพิ่ม config apache ลงใน virtual host ด้วยนะครับ
ServerAlias *.icez.net
ตามนี้เลยฮะ (แก้ตัวสีน้ำเงินด้วยน่อ)
แล้วก็อย่าลืมไป add DNS record ด้วยนะจ๊ะ
*.icez.net. IN A 203.146.129.182
.
.
แก้ไขเพิ่มเติมจ้าาาา ด้านบนเลย ^^”
ตอนแรกคิดว่าจะสามารถทำได้โดยอาศัย .htaccess อย่างเดียวเสียอีก
อืม แล้วแบบนี้มันต่างกับ DNS Wildcard ยังไงล่ะนี่
ตอนแรกคิดว่าจะสามารถทำได้โดยอาศัย .htaccess อย่างเดียวเสียอีก
อืม แล้วแบบนี้มันต่างกับ DNS Wildcard ยังไงล่ะนี่
ขอบคุณมากครับ
ว่าแต่ว่า ถ้าลองเข้า http://test.icez.net/2009 บน address bar มันจะเปลี่ยนเปน http://test.icez.net/test/2009/
แต่ถ้าเข้า http://test.icez.net/2009/ มันจะเป็นแบบนี้เลยครับ
จะแก้ไงได้บ้างอ่ะครับ
ขอบคุณมากครับ
ว่าแต่ว่า ถ้าลองเข้า http://test.icez.net/2009 บน address bar มันจะเปลี่ยนเปน http://test.icez.net/test/2009/
แต่ถ้าเข้า http://test.icez.net/2009/ มันจะเป็นแบบนี้เลยครับ
จะแก้ไงได้บ้างอ่ะครับ
เยี่ยมไปเลย หามานานแล้ว ขอบคุณคับ
เยี่ยมไปเลย หามานานแล้ว ขอบคุณคับ
หากผมต้องการให้ย้ายจากทุก subdomain ไปที่โปรแกรม เช่น
test3.xxx.com -> xxx.com/index.php?test3
ไม่ทราบว่าแก้ไขอย่างไรครับ
ผมพยายามแก้ RewriteRule ^(.*)$ /%1/$1 [L,QSA] เป็น RewriteRule ^(.*)$ /index.php?%1&$1 [L,QSA]
มันจะเด้งหน้า Internal Server Error ขึ้นมาเลย
สามารถแก้ได้อย่างไรครับ
หากผมต้องการให้ย้ายจากทุก subdomain ไปที่โปรแกรม เช่น
test3.xxx.com -> xxx.com/index.php?test3
ไม่ทราบว่าแก้ไขอย่างไรครับ
ผมพยายามแก้ RewriteRule ^(.*)$ /%1/$1 [L,QSA] เป็น RewriteRule ^(.*)$ /index.php?%1&$1 [L,QSA]
มันจะเด้งหน้า Internal Server Error ขึ้นมาเลย
สามารถแก้ได้อย่างไรครับ