หัวข้อ: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: arttojung ที่ 07 พฤศจิกายน 2011, 20:46:32 คือผมพยายามหาใน google แล้วไม่เข้าใจอะครับ
คือผมอยากสร้าง ซับโดเมนจากไอเร็คทอรี่ เช่น domain.com/test เป็น test.domain.com โดยการใช้ .htaccess ตอนนี้ผมทำการเปิด wildcard dns แล้วอะครับ ทีนี้ในไฟล์ .htaccess ผมต้องใส่อะไรไปบ้างเท่าที่อ่านมาจะเป็น RewriteEngine On RewriteCond %{HTTP_HOST} ^([^.]+)\.example\.com RewriteRule ^(.*)\.php$ index.php?subdomain=%1 [L,QSA] คือผมไม่ทราบว่ามันถูกหรือป่าวหนะครับ :wanwan017: :wanwan017: หัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: cattee ที่ 07 พฤศจิกายน 2011, 20:49:31 :wanwan022:
หัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: arttojung ที่ 07 พฤศจิกายน 2011, 20:59:55 ดันหน่อยครับ
หัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: AKarnny ที่ 07 พฤศจิกายน 2011, 21:00:51 หาอยู่คึกัน :wanwan017:
หัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: TummZ ที่ 07 พฤศจิกายน 2011, 21:13:57 รอผู้รู้ครับ :wanwan017:
หัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: arttojung ที่ 07 พฤศจิกายน 2011, 21:30:51 ไม่มีใครรู้เลยหรอ
หัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: Naskung ที่ 07 พฤศจิกายน 2011, 21:49:43 ใช้ host คนละอย่างซะด้วย
หัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: Kobsoft ที่ 07 พฤศจิกายน 2011, 21:52:40 :D ผ่านมาสองรอบแล้ว ยังไม่เห็นมีใครมาตอบ ... เลยแวะเจิมให้สักหน่อยคับ
เขียนแบบนี้นะจ๊ะ RewriteCond %{HTTP_HOST} !www.domain.com$ [NC] RewriteCond %{HTTP_HOST} ^(www.)?([a-z0-9\-]+).domain.com [NC] RewriteRule ^$ index.php?subdomain=%2 *เงื่อนไขด้านบนสตริงใน ซับโดเมนเป็นได้เฉพาะ a-z เลข 0-9 และ - นะคับ ถ้า้ต้องการเพิ่มเติมก็แก้เงื่อนไขได้เลย สำหรับค่าที่ส่งไปนั้นจะส่งไปให้เพจ index.php ตัวแปรชื่อ $_GET[subdomain] คับ หัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: arttojung ที่ 07 พฤศจิกายน 2011, 21:53:49 :D ผ่านมาสองรอบแล้ว ยังไม่เห็นมีใครมาตอบ ... เลยแวะเจิมให้สักหน่อยคับ ผมเอาใส่ใน .htaccess แล้วอัพลงโฮสแล้วใช้ได้เลยป่ะครับเขียนแบบนี้นะจ๊ะ RewriteCond %{HTTP_HOST} !www.domain.com$ [NC] RewriteCond %{HTTP_HOST} ^(www.)?([a-z0-9\-]+).domain.com [NC] RewriteRule ^$ index.php?subdomain=%2 *เงื่อนไขด้านบนสตริงใน ซับโดเมนเป็นได้เฉพาะ a-z เลข 0-9 และ - นะคับ ถ้า้ต้องการเพิ่มเติมก็แก้เงื่อนไขได้เลย สำหรับค่าที่ส่งไปนั้นจะส่งไปให้เพจ index.php ตัวแปรชื่อ $_GET[subdomain] คับ หัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: NightClub ที่ 07 พฤศจิกายน 2011, 21:55:33 ไม่แน่ใจว่าต้องทำ wildcard domain ด้วยหรือเปล่านะ ได้ยังไงบอกด้วยนะครับ
หัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: arttojung ที่ 07 พฤศจิกายน 2011, 21:56:28 ไม่แน่ใจว่าต้องทำ wildcard domain ด้วยหรือเปล่านะ ได้ยังไงบอกด้วยนะครับ ครับเดียวถ้าทำได้ เดียวผมบอกหัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: xvlnw.com ที่ 07 พฤศจิกายน 2011, 21:58:31 ผมทำแบบนี้นะครับ
ส่วนที่ 1 .htaccess โค๊ด: <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php/$1 [L] </IfModule> ส่วนที่ 2 PHP สำหรับรับค่า Sub Domain โค๊ด: <?php $maindomain = "domain.com"; $sub = preg_replace("/(\.)?(".$maindomain.")$/", "", $_SERVER["HTTP_HOST"]); if($sub != "" and $sub != "www"){ echo "Sub Domain: {$sub}"; }else{ echo "Main Domain"; } $segment = isset($_SERVER['PATH_INFO']) ? explode('/',preg_replace('~^/?(.*?)/?$~','$1',$_SERVER['PATH_INFO'])) : array() ; echo "<pre>"; print_r($segment); echo "</pre><pre>"; print_r($_GET); echo "</pre>"; ?> หลังจากนั้นจะทำไรต่อก็ตามแต่สะดวกครับ อ้อ อย่าลืมทำ Wildcard DNS ด้วยนะครับผม :wanwan003: หัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: arttojung ที่ 07 พฤศจิกายน 2011, 22:01:33 ผมทำแบบนี้นะครับ ส่วน php นี้เราต้องเรียกใช้ตอนไหนครับส่วนที่ 1 .htaccess โค๊ด: <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php/$1 [L] </IfModule> ส่วนที่ 2 PHP สำหรับรับค่า Sub Domain โค๊ด: <?php $maindomain = "domain.com"; $sub = preg_replace("/(\.)?(".$maindomain.")$/", "", $_SERVER["HTTP_HOST"]); if($sub != "" and $sub != "www"){ echo "Sub Domain: {$sub}"; }else{ echo "Main Domain"; } $segment = isset($_SERVER['PATH_INFO']) ? explode('/',preg_replace('~^/?(.*?)/?$~','$1',$_SERVER['PATH_INFO'])) : array() ; echo "<pre>"; print_r($segment); echo "</pre><pre>"; print_r($_GET); echo "</pre>"; ?> หลังจากนั้นจะทำไรต่อก็ตามแต่สะดวกครับ อ้อ อย่าลืมทำ Wildcard DNS ด้วยนะครับผม :wanwan003: หัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: KNACX ที่ 07 พฤศจิกายน 2011, 22:02:56 ต้องทำ wildcard ด้วยนะครับ
หัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: arttojung ที่ 07 พฤศจิกายน 2011, 22:04:23 ต้องทำ wildcard ด้วยนะครับ ตรงนี้ผมทำแล้วครับหัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: xvlnw.com ที่ 07 พฤศจิกายน 2011, 22:04:40 ผมทำแบบนี้นะครับ ส่วน php นี้เราต้องเรียกใช้ตอนไหนครับส่วนที่ 1 .htaccess โค๊ด: <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php/$1 [L] </IfModule> ส่วนที่ 2 PHP สำหรับรับค่า Sub Domain โค๊ด: <?php $maindomain = "domain.com"; $sub = preg_replace("/(\.)?(".$maindomain.")$/", "", $_SERVER["HTTP_HOST"]); if($sub != "" and $sub != "www"){ echo "Sub Domain: {$sub}"; }else{ echo "Main Domain"; } $segment = isset($_SERVER['PATH_INFO']) ? explode('/',preg_replace('~^/?(.*?)/?$~','$1',$_SERVER['PATH_INFO'])) : array() ; echo "<pre>"; print_r($segment); echo "</pre><pre>"; print_r($_GET); echo "</pre>"; ?> หลังจากนั้นจะทำไรต่อก็ตามแต่สะดวกครับ อ้อ อย่าลืมทำ Wildcard DNS ด้วยนะครับผม :wanwan003: เอาไปไว้ใน index.php ครับ แล้วลองเรียก โค๊ด: xxx.domain.com บรา ๆ ๆ yyy.domain.com zzz.domain.com domain.com domain.com/xxx/yyy/zzz.html หัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: Putter™ ที่ 08 พฤศจิกายน 2011, 03:44:20 แอบฟังๆ เป็นยังไงบ้างครับ
ถึงไหนแล้ว ครับ เจ้าของกระทู้ ได้ไอเดียดีๆเยอะเลยจากกระทู้นี้ :wanwan017: หัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: bank_i3 ที่ 08 พฤศจิกายน 2011, 07:54:24 ขอบคุณครับ ขอเก็บก่อน :wanwan017:
หัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: logisfix ที่ 08 พฤศจิกายน 2011, 08:45:52 อันนี้เปล่า ผมก็ไม่ได้ใช้ apache
http://www.siamwebcity.com/%E0%B8%A7%E0%B8%B4%E0%B8%98%E0%B8%B5%E0%B8%AA%E0%B8%A3%E0%B9%89%E0%B8%B2%E0%B8%87_subdomain_%E0%B9%82%E0%B8%94%E0%B8%A2%E0%B9%83%E0%B8%8A%E0%B9%89_mod_rewrite_%E0%B8%82%E0%B8%AD%E0%B8%87_apache_%E0%B8%84%E0%B8%A3%E0%B8%B1%E0%B8%9A_-515-16.html หัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: arttojung ที่ 08 พฤศจิกายน 2011, 13:34:22 ตอนนี้ผมพอจะทำได้แล้วครับ เพียงแต่ว่ายังมี error อยู่นิดหน่อยเดียวถ้าทำได้แล้วเดียวจะมาเขียนเล่าให้ฟังนะครับ
หัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: arttojung ที่ 08 พฤศจิกายน 2011, 13:48:02 ได้ล่ะครับ
หัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: arttojung ที่ 08 พฤศจิกายน 2011, 13:55:24 ตรงนี้ผมไม่ได้ใช้ .htaccess พอดีไปเจอกระทู้นี้ http://www.thaiseoboard.com/index.php/topic,16485.0.html
เข้าก็เลยลองทำตามดูปรากฎว่าทำได้ ผมได้นำ code ในส่วนนี้ $maindomain = "thaiseoboard.com"; $sub = preg_replace("/(\.)?(".$maindomain.")$/", "", $_SERVER["HTTP_HOST"]); if($sub) { include("$sub/index.php"); //สั่ง include มาแสดงผลแทน } ไปใส่ในหน้าเว็บอะนะครับ ซึ้งถ้าเราเอาตาม code นี้ถ้ามันเป็นหน้าแรกมันก็จะไม่มีปัญหาอะไรแต่ถ้าเราลองสั่งหน้าซัพดูซึ่งมันจะโชว์ index.php ในหน้าซัพ แล้วก็โชว์ในหน้าแรกของเราด้วยซึ่ง้ราไม่ต้องการดังนั้นผมจึงสร้างไฟล์ index2.php ขึ้นมาอะนะครับ แล้วนำ code นี้ไปใส่ในไฟล์ index.php ใน path แรกของเรา <?php $maindomain = "domain.com"; $sub = preg_replace("/(\.)?(".$maindomain.")$/", "", $_SERVER["HTTP_HOST"]); if($sub) { include("$sub/index.php"); }else{ include("index2.php"); } ?> ดังนั้นก็จะได้ ถ้าเราเรียกเป็นซัพมันก็จะวิ่งไปหน้า sub/index.php แต่ถ้าเราเรียกโดเมนหลักมันก็จะวิ่งไปหน้า index2.php แทนประมาณนี้อะครับลองเอาไปปรับใช้กันดูครับ ทั้งนี้ในส่วนนี้ผมได้คุณ xvlnw.com มาให้คำแนะนำด้วยหนะครับ หัวข้อ: Re: สร้างซับโดเมนด้วย .htaccess เริ่มหัวข้อโดย: 4Aoy ที่ 08 พฤศจิกายน 2011, 15:17:42 มาเรียนรู้ วันหน้าจะได้ทำ :P
|