ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

หน้า: 1 [2] 3   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: การแปลง URL โดยใช้ Mod_Rewrite  (อ่าน 45336 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
UnzO
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 54
ออฟไลน์ ออฟไลน์

กระทู้: 1,872



ดูรายละเอียด เว็บไซต์
« ตอบ #20 เมื่อ: 14 มกราคม 2007, 22:30:33 »

มีปัญหานิดหน่อยครับ คือ เมื่อเรา rewrite ใหม่แล้ว พวกรูปทั้งหลายที่เราใส่ไว้ว่า "img/pic01.jpg" มันจะไม่ออก ทำให้เราต้องเปลี่ยน url ของรูปใหม่ทั้งหมดใน src ไฟล์ ซึ่งหากเป้นเว็บใหญ่ๆ ก็จะเวลาพอสมควร (จิงๆ แล้วมันใช้ Find Replace ได้ แต่เราก็ต้องตรวจด้วยตาอีกเพื่อความแน่นอน)
จึงอยากจะสอบถามว่า มันพอมีทางแก้ในการเขียนรึป่าวครับ ผมแค่สงสัยหน่ะครับ ว่าเราต้องแก้แบบนี้ทุกครั้งรึป่าวครับ

ส่วนอีกข้อคือ ระหว่าง http://www.domain.com/magician/Criss%20Angle/7/ และ http://localhost/magician/Criss-Angle/7/  อันไหนจะมีดีหรือผมเสียกันแค่ไหน หรือไม่มีผล ครับ
และเราสามารถแก้ในการ rewrite ได้รึป่าวครับ ว่าถ้าเจอ ช่องว่างให้เปลี่ยนเป้น - หรือเราต้องใช้ php เขียน

ขอบคุณครับ อาจถามเยอะไปหน่อยนะ แหะๆ
บันทึกการเข้า
EThaiZone
เจ้าพ่อโลลิค่อน
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 321
ออฟไลน์ ออฟไลน์

กระทู้: 12,518



ดูรายละเอียด เว็บไซต์
« ตอบ #21 เมื่อ: 14 มกราคม 2007, 23:41:57 »

ต้องทำใน php ครับ มีหลายวิธี
อันนี้แล้วแต่บุคคลครับ

ส่วนเรื่องปัญหาการอ้างถึงรูป
แก้ได้ด้วยการเรียกแบบ full url ครับ
ทำกับทุกรูปเลย
และความจริงอยากให้ดี ทำ full url กับลิงค์ภายในก็ดีครับ
จะช่วยให้ search engine เข้าใจง่ายขึ้นครับ

อาจจะมีผลกับเรื่องอินเด็กด้วยน้า  :wink:
บันทึกการเข้า

UnzO
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 54
ออฟไลน์ ออฟไลน์

กระทู้: 1,872



ดูรายละเอียด เว็บไซต์
« ตอบ #22 เมื่อ: 15 มกราคม 2007, 01:24:43 »

ขอบคุณครับ ว่าแต่ท่าน EthaiZone เนี้ย มีเมลล์ผมด้วยนี้นา ไม่ยักรู้ว่าอยู่บอร์ดนี้ด้วย (แบบว่าไม่ค่อยได้เข้ามาหาความรู้เท่าไหร่ ช่วงนี้เซ้งเซ็ง คนรักจากไป :cry: )

ปล. ในเมลล์ท่านมี UnzO Corporation ป่ะครับ  :?:
บันทึกการเข้า
hurahura
สมุนแก๊งเสียว
*

พลังน้ำใจ: 20
ออฟไลน์ ออฟไลน์

กระทู้: 868



ดูรายละเอียด
« ตอบ #23 เมื่อ: 07 กุมภาพันธ์ 2007, 17:12:51 »

ขอจะถามหน่อยครับว่าเราจะรู้ได้ยังไงว่า Host มันใช้ได้หรือเปล่า
ผลลงโทรไปถาม คุยกันตั้งนานกว่าจะรู้เรื่อง เพราะไม่รู้ว่าจะเรียกมันว่าอะไร
เรียกว่า Mod_Rewrite ไม่เห็นเขารู้จักเลย ต้องนั่งอธิบาย
สุดท้ายเขาให้เข้าไปดูที่ phpinfo ที่ตรง url_rewriter.tags
ซึ่งผมก็ไม่รู้ว่ามันคืออย่างเดียวกันหรือเปล่า
นี่ดีนะลองถามจากเว็บ host ของไทย ถ้าของฝรั่งจะคุยยังไงเนี่ย

จึงอยากทราบครับว่ามีวิธีดูตรงไหน ว่าโฮสนั่นๆ สามารถใช้ได้
มันจะใช้ได้เฉพาะลีนุกหรือเปล่า หรือไม่เกี่ยวกัน
หรือถ้าต้องโทรถามจริงๆ จะถามว่าอย่างไรให้เข้าใจตรงกัน

ขอบคุณครับ
บันทึกการเข้า
kingmaster
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 11
ออฟไลน์ ออฟไลน์

กระทู้: 2,183



ดูรายละเอียด
« ตอบ #24 เมื่อ: 07 กุมภาพันธ์ 2007, 17:21:51 »

อ้างจาก: "hurahura"
ขอจะถามหน่อยครับว่าเราจะรู้ได้ยังไงว่า Host มันใช้ได้หรือเปล่า
ผลลงโทรไปถาม คุยกันตั้งนานกว่าจะรู้เรื่อง เพราะไม่รู้ว่าจะเรียกมันว่าอะไร
เรียกว่า Mod_Rewrite ไม่เห็นเขารู้จักเลย ต้องนั่งอธิบาย
สุดท้ายเขาให้เข้าไปดูที่ phpinfo ที่ตรง url_rewriter.tags
ซึ่งผมก็ไม่รู้ว่ามันคืออย่างเดียวกันหรือเปล่า
นี่ดีนะลองถามจากเว็บ host ของไทย ถ้าของฝรั่งจะคุยยังไงเนี่ย

จึงอยากทราบครับว่ามีวิธีดูตรงไหน ว่าโฮสนั่นๆ สามารถใช้ได้
มันจะใช้ได้เฉพาะลีนุกหรือเปล่า หรือไม่เกี่ยวกัน
หรือถ้าต้องโทรถามจริงๆ จะถามว่าอย่างไรให้เข้าใจตรงกัน

ขอบคุณครับ


ถ้าเป็น apache ใช้ได้ชัวน์ครับ แต่เค้าต้องเปิดใช้งาน mod_rewrite ในไฟล์ httpd.conf ก่อนครับ

บอกให้เค้าหาบรรทัดนี้
#LoadModule rewrite_module modules/mod_rewrite.so
แล้วเอาเครื่องหมาย # ด้านหน้าออก save แล้ว restart apache แค่นี้ก็ใช้ได้ละครับ
บันทึกการเข้า

Bug Fix AllinoneGenerator --> BugFix... | รถตู้เชียงใหม่
ColdMoney
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 200
ออฟไลน์ ออฟไลน์

กระทู้: 12,622



ดูรายละเอียด เว็บไซต์
« ตอบ #25 เมื่อ: 07 กุมภาพันธ์ 2007, 17:53:37 »

ขอบคุณมากครับ เดี๋ยวจะกลับมาอ่านให้จบ  Tongue  Tongue
บันทึกการเข้า

akibara
Newbie
*

พลังน้ำใจ: 0
ออฟไลน์ ออฟไลน์

กระทู้: 7



ดูรายละเอียด
« ตอบ #26 เมื่อ: 12 มีนาคม 2007, 20:43:33 »

โค๊ด:
rewriteCond %{REQUEST_URI} !/$ 
rewriteCond %{REQUEST_URI} !\.
rewriteRule ^(.+)/(.+)$ index.php?category=$1&sub=$2
rewriteRule ^(.+)/(.+)/$ index.php?category=$1&sub=$2


ไม่ทราบว่าผิดยังไงเหรอครับ คือมันขึ้นแต่ $2 ส่วน $1 ว่าง
คือผมจะแปลงเป็นงี้อะคับ สมมุติ
/blog/diary
ให้มาเอา blog มาเป็น $1
ส่วน diary มาเป็น $2 อย่างงี้อะคับ

เพราะถ้าทำแบบนี้ มันจะเอามาเฉพาะ diary ส่วน blog จะไม่ถูกดึงมาด้วย

ขอบคุณมากฮะ
บันทึกการเข้า

ttp://www.siamthink.com
Downloads Center !! Beta Version !!

http://www.upimages.us
Free Files Upload
aomnaruk
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 4
ออฟไลน์ ออฟไลน์

กระทู้: 1,245



ดูรายละเอียด
« ตอบ #27 เมื่อ: 17 เมษายน 2007, 14:27:33 »

แล้วถ้า URL หลัง REwrite มีเครื่องหมาย "+" จะพิมพ์คำสั่งยังไงครับ
บันทึกการเข้า
Tee++;
โปรแกรมเมอร์ จอหงวน
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 79
ออฟไลน์ ออฟไลน์

กระทู้: 1,861



ดูรายละเอียด เว็บไซต์
« ตอบ #28 เมื่อ: 17 เมษายน 2007, 15:48:05 »

อ้างจาก: "aomnaruk"
แล้วถ้า URL หลัง REwrite มีเครื่องหมาย "+" จะพิมพ์คำสั่งยังไงครับ


\+
บันทึกการเข้า

EThaiZone
เจ้าพ่อโลลิค่อน
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 321
ออฟไลน์ ออฟไลน์

กระทู้: 12,518



ดูรายละเอียด เว็บไซต์
« ตอบ #29 เมื่อ: 17 เมษายน 2007, 20:08:07 »

อ้างจาก: "UnzO"
ขอบคุณครับ ว่าแต่ท่าน EthaiZone เนี้ย มีเมลล์ผมด้วยนี้นา ไม่ยักรู้ว่าอยู่บอร์ดนี้ด้วย (แบบว่าไม่ค่อยได้เข้ามาหาความรู้เท่าไหร่ ช่วงนี้เซ้งเซ็ง คนรักจากไป :cry: )

ปล. ในเมลล์ท่านมี UnzO Corporation ป่ะครับ  :?:


มีครับๆ

ผมก็เพิ่งรู้ว่าทั่นอยู่ในบอร์ดด้วยเหมือนกัน  :lol:

สำหรับท่านๆ ที่ไม่เข้าใจเรื่อง rewrite
โค๊ด:
http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html
บันทึกการเข้า

hurahura
สมุนแก๊งเสียว
*

พลังน้ำใจ: 20
ออฟไลน์ ออฟไลน์

กระทู้: 868



ดูรายละเอียด
« ตอบ #30 เมื่อ: 15 พฤษภาคม 2007, 21:15:36 »

ต้งอไป set อะไรก่อนหรือเปล่าครับ ถึงจะใช้ได้
ทำไมทำแล้วไม่เห็นเกิดอะไรขึ้นเลย

ใช้ hostmonster
บันทึกการเข้า
joe
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: -6
ออฟไลน์ ออฟไลน์

กระทู้: 1,126



ดูรายละเอียด
« ตอบ #31 เมื่อ: 03 กันยายน 2007, 07:52:40 »

ขอขุดหน่อยครับ ไม่รู้ว่า .htaccess มันจะช่วยได้ป่าว

คือสมมติผมมีข้อมูลเก็บอยู่ที่ subdirectory ของ root อะครับ ประมาณแบบนี้
อ้างถึง
/home/userid/public_html/joeimages/1/header.gif
/home/userid/public_html/joeimages/1/bg.gif
/home/userid/public_html/joeimages/1/border.gif
/home/userid/public_html/joeimages/1/footer.gif

/home/userid/public_html/joeimages/2/header.gif
/home/userid/public_html/joeimages/2/bg.gif
/home/userid/public_html/joeimages/2/border.gif
/home/userid/public_html/joeimages/2/footer.gif

/home/userid/public_html/joeimages/3/header.gif
/home/userid/public_html/joeimages/3/bg.gif
/home/userid/public_html/joeimages/3/border.gif
/home/userid/public_html/joeimages/3/footer.gif

ถ้ามีการเรียก url hxxp://www.addondomain.com/joeimages/1/bg.gif
แล้วผมต้องการให้มันไปดึงข้อมูลมาจาก path ตามด้านบนอะครับ

คือตอนนี้ผมเขียนให้มันเรียกได้แล้ว แบบนี้
อ้างถึง
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^joeimages/([0-9]+)/(.*)$ hxxp://www.maindomain.com/joeimages/$1/$2

แต่มันมีปัญหาตรงที่ว่า ผมเข้าไปเช็คดูในโฮส ปรากฎว่ามันเปลือง bandwidth มากเลยครับ
เพราะมันเหมือนเรียก ผ่าน browser ทุกครั้งเลย
ผมเลยอยากเปลี่ยนให้มันเรียกผ่าน path ตรงๆ เลยจะเขียนยังไงครับ

เลยลองเปลี่ยนเป็นแบบนี้ แต่ลองแล้วมันเรียกไม่ได้อะครับ
อ้างถึง
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^joeimages/([0-9]+)/(.*)$ /home/userid/public_html/joeimages/$1/$2


คำถามครับ
.htaccess มันเขียนให้ไปดึงข้อมูลจาก path ที่ต้องการมาตรงๆเลยได้มั้ยครับ ??


คือผมไม่อยากสร้าง directory จริงๆให้กับ addondomain อะครับ
ข้อมูลมันเยอะ เวลามีการแก้ไขทีต้อง copy แก้กันนานเลย
 Kiss
บันทึกการเข้า
ttk
Newbie
*

พลังน้ำใจ: 0
ออฟไลน์ ออฟไลน์

กระทู้: 1



ดูรายละเอียด
« ตอบ #32 เมื่อ: 05 พฤศจิกายน 2007, 18:22:28 »

ผมลอง แบบง่ายที่สุดอ่ะครับ คือสร้างไฟล์ไว้สองตัว a.html กับ b.html แล้วเขียนใน  .htaccess ยังงี้อ่ะครับ
RewriteEngine on
RewriteRule ^a\.html$ b.html
 แล้ววางไฟล์ .htaccess ไว้ใน folder เดียวกันกับไฟล์ทั้งสองตัว
จากนั้น พอลองเข้าไปที่ a.html มันขึ้น error ว่ายังงี้น่ะครับ

Server error!
The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there was an error in a CGI script.

If you think this is a server error, please contact the webmaster.

Error 500
« แก้ไขครั้งสุดท้าย: 06 พฤศจิกายน 2007, 12:28:36 โดย ttk » บันทึกการเข้า
EThaiZone
เจ้าพ่อโลลิค่อน
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 321
ออฟไลน์ ออฟไลน์

กระทู้: 12,518



ดูรายละเอียด เว็บไซต์
« ตอบ #33 เมื่อ: 05 พฤศจิกายน 2007, 18:52:20 »

ตอบคุณ hurahura

ลองติดต่อซัพพอร์ทดูครับ ผมเองก็ไม่เคยใช้ hostmonster ครับ



ตอบคุณ Joe

ใช้แบบนี้แทนครับ

Options +FollowSymLinks
RewriteEngine on
RewriteRule ^joeimages/([0-9]+)/(.*)$ joeimages/$1/$2

แต่ผมก็ไม่เข้าใจว่าจะรีไรท์ไปทำไม  Tongue

ส่วนที่ถามว่าดึงโดยตรงได้ไหม ได้ครับ



ตอบคุณ  ttk
เข้าใจว่ามันหาไฟล์ b.html ไม่เจอ ไม่ก็เป็นที่เซอเวอร์
ลองติดต่อซัพพอร์ทให้ช่วยดูก็ได้ครับ เพราะขึ้นอยู่กับตำแหน่งโฟลเดอร์ด้วย (ในบางที)

บันทึกการเข้า

joe
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: -6
ออฟไลน์ ออฟไลน์

กระทู้: 1,126



ดูรายละเอียด
« ตอบ #34 เมื่อ: 05 พฤศจิกายน 2007, 20:00:04 »

คุณ ethaizone คงเข้าใจผิดอะครับ

โค๊ด:
/home/userid/public_html/joeimages/1/header.gif

ตรงนี้มันอยู่ในส่วนของ main-domain นะครับ
เพราะฉะนั้น path url จริงๆ ของมันก็จะเป็น http://www.main-domain.com/joeimages/1/header.gif

แต่ที่ผมต้องการคือเรียกผ่าน addon-domain
http://www.addon-domain.com/joeimages/1/header.gif


โดยที่ folder ของ addon-domain นั้นมันไม่มี directory joeimages อยู่จริงๆ
จะให้มันไปดึงจาก /home/userid/public_html/joeimages/1/header.gif

ว่าง่ายๆก็คือ ผมจะให้ folder joeimages ร่วมกันทั้งหมด ทุกๆโดเมนในโฮสนะครับ


แต่ตอนนี้ไม่ได้ใช้แระ เวบปั่นโดนแบน สมัครใหม่ยังไม่ผ่านเลย  Tongue
บันทึกการเข้า
Dr.K
Verified Seller
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 435
ออฟไลน์ ออฟไลน์

กระทู้: 6,816



ดูรายละเอียด เว็บไซต์
« ตอบ #35 เมื่อ: 05 พฤศจิกายน 2007, 20:57:48 »

ให้ server หลัก มี
Alias เป็นชื่อserver รองสิครับ
บันทึกการเข้า

EThaiZone
เจ้าพ่อโลลิค่อน
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 321
ออฟไลน์ ออฟไลน์

กระทู้: 12,518



ดูรายละเอียด เว็บไซต์
« ตอบ #36 เมื่อ: 06 พฤศจิกายน 2007, 08:46:12 »

คุณ ethaizone คงเข้าใจผิดอะครับ

โค๊ด:
/home/userid/public_html/joeimages/1/header.gif

ตรงนี้มันอยู่ในส่วนของ main-domain นะครับ
เพราะฉะนั้น path url จริงๆ ของมันก็จะเป็น http://www.main-domain.com/joeimages/1/header.gif

แต่ที่ผมต้องการคือเรียกผ่าน addon-domain
http://www.addon-domain.com/joeimages/1/header.gif


โดยที่ folder ของ addon-domain นั้นมันไม่มี directory joeimages อยู่จริงๆ
จะให้มันไปดึงจาก /home/userid/public_html/joeimages/1/header.gif

ว่าง่ายๆก็คือ ผมจะให้ folder joeimages ร่วมกันทั้งหมด ทุกๆโดเมนในโฮสนะครับ


แต่ตอนนี้ไม่ได้ใช้แระ เวบปั่นโดนแบน สมัครใหม่ยังไม่ผ่านเลย  Tongue


อ้อครับ คงเป็น hostgator งั้นก็

Options +FollowSymLinks
RewriteEngine on
RewriteRule ^joeimages/([0-9]+)/(.*)$ ../joeimages/$1/$2
บันทึกการเข้า

paradox_073
สมุนแก๊งเสียว
*

พลังน้ำใจ: 30
ออฟไลน์ ออฟไลน์

กระทู้: 720



ดูรายละเอียด
« ตอบ #37 เมื่อ: 06 พฤศจิกายน 2007, 09:08:46 »

 Smiley เยี่ยมมากเลย  Cheesy
บันทึกการเข้า

tosakp
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 113
ออฟไลน์ ออฟไลน์

กระทู้: 1,960



ดูรายละเอียด
« ตอบ #38 เมื่อ: 20 ธันวาคม 2007, 16:13:33 »

20/12/2007:
ไม่ได้ Update นาน วันนี้ไปเจอข้อมูลเว็บภาษาไทย เห็นว่ามีประโยชน์ครับ
http://www.phpconcept.com/node/8

เกี่ยวกับ regexp ซึ่งต้องใช้บ้างในการทำ URL Rewrite
บันทึกการเข้า

thaidesigner
Newbie
*

พลังน้ำใจ: 0
ออฟไลน์ ออฟไลน์

กระทู้: 5



ดูรายละเอียด เว็บไซต์
« ตอบ #39 เมื่อ: 12 กรกฎาคม 2008, 02:32:34 »

 Tongue ขอบคุณมาก กำลังมึนเลย บอรืดตัวเองเจ๊ง เพราะไปลงตัวนี้ครับ
โค๊ด:
[url]http://www.phpbb-seo.com/boards/simple-seo-url-vf60/[/url]
แต่มันดันไม่สมบูรณ์อ่ะครับ  Lips Sealed
แถมตีมที่ใช้ดันไม่มีซับพอร์ทอีก  Tongue
บันทึกการเข้า

DESIGN FORUM
มือใหม่ไทยดีไซน์เนอร์
หน้า: 1 [2] 3   ขึ้นบน
พิมพ์