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

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

ThaiSEOBoard.comพัฒนาเว็บไซต์ProgrammingSMF ขอคำแนะนำด้วย http://www.xxx.com/index.php?www
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: SMF ขอคำแนะนำด้วย http://www.xxx.com/index.php?www  (อ่าน 2326 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
GTA
สมุนแก๊งเสียว
*

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

กระทู้: 715



ดูรายละเอียด
« เมื่อ: 30 ธันวาคม 2009, 15:00:47 »

พอดีติดตั้ง SMF เสร็จ

แล้วลองเข้าเว็บตัวเอง

พิมพ์  url ตามปกติ xxxxx.com
แล้วมันขึ้น http://www.xxxx.com/index.php?...c566758ac5139f2d6afbeda7f8;www wanwan044

หน้าเพจเป็นแบบนี้
Forbidden
You don't have permission to access /index.php on this server.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
--------------------------------------------------------------------------------
Apache/2 Server at www.xxxx.com Port 80

แต่ลองพิมพ์ url ตามปกติ xxxxx.com อีกทีครั้งที่ 2 แล้วมันขึ้น http://www.xxxx.com/index.php?www
หน้าเพจกลับเข้าได้ปกติ Shocked

อยากทราบว่ามีวิธีแก้ป่าวคับ

กำลัง งงสุดขีด wanwan031
ใครก็ได้บอกที ว่าจะแก้อะไรตรงไหน SMF :'(
บันทึกการเข้า
GTA
สมุนแก๊งเสียว
*

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

กระทู้: 715



ดูรายละเอียด
« ตอบ #1 เมื่อ: 30 ธันวาคม 2009, 15:25:07 »

ขอดัน
ได้โปรด  wanwan008
บันทึกการเข้า
Reality
สมุนแก๊งเสียว
*

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

กระทู้: 757



ดูรายละเอียด เว็บไซต์
« ตอบ #2 เมื่อ: 30 ธันวาคม 2009, 16:14:55 »

มันเป็นการป้องกัน session injection ของ SMF อย่างนึงน่ะครับ

ครั้งแรกที่เราเข้าเว็บมันเลยใส่ session_id ติดมาด้วย เราจะปิดมันก็ได้ครับ
ซึ่งวิธีปิดที่ฝรั่งมันบอกๆ มา มันให้เรา

เปิดไฟล์ ./Sources/Load.php
ค้นหา
โค๊ด:
function loadSession()

แล้วก็แก้ @ini_set('session.use_trans_sid', false); เป็น @ini_set('session.use_trans_sid', 0);
ผมก็งงๆ มันต่างกันยังไง

ของผมแก้แล้วใช้ไม่ได้นะครับ

---

ข้างบนนั้นบอกวิธีที่ฝรั่งเขาทำมา คราวนี้มาดูอันที่ผมว่าเวิร์คก็คือให้คุณเปิด ไฟล์ ./Sources/QueryString.php ครับ
ค้นหา
โค๊ด:
ob_sessrewrite($buffer)

ค้นหา
โค๊ด:
if ($scripturl == '' || !defined('SID'))
return $buffer;

แล้วก็เติม
โค๊ด:
return $buffer;

ก็คือผมไม่ให้มันเขียน url ใหม่นี้เอง ผมก็ยังไม่แน่ใจนะครับว่ามีผลเสียรึเปล่า แต่คิดว่าไม่น่าจะมี


ผิดพลาดอย่างไรขออภัย  wanwan017

ถ้าใครมีวิธีที่ดีกว่า ก็แนะนำด้วยครับ
บันทึกการเข้า

*You walk right into reality, While my heart's still wild and free.. 

Midnight Adventure
GTA
สมุนแก๊งเสียว
*

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

กระทู้: 715



ดูรายละเอียด
« ตอบ #3 เมื่อ: 30 ธันวาคม 2009, 16:42:26 »

มันเป็นการป้องกัน session injection ของ SMF อย่างนึงน่ะครับ

ครั้งแรกที่เราเข้าเว็บมันเลยใส่ session_id ติดมาด้วย เราจะปิดมันก็ได้ครับ
ซึ่งวิธีปิดที่ฝรั่งมันบอกๆ มา มันให้เรา

เปิดไฟล์ ./Sources/Load.php
ค้นหา
โค๊ด:
function loadSession()

แล้วก็แก้ @ini_set('session.use_trans_sid', false); เป็น @ini_set('session.use_trans_sid', 0);
ผมก็งงๆ มันต่างกันยังไง

ของผมแก้แล้วใช้ไม่ได้นะครับ

---

ข้างบนนั้นบอกวิธีที่ฝรั่งเขาทำมา คราวนี้มาดูอันที่ผมว่าเวิร์คก็คือให้คุณเปิด ไฟล์ ./Sources/QueryString.php ครับ
ค้นหา
โค๊ด:
ob_sessrewrite($buffer)

ค้นหา
โค๊ด:
if ($scripturl == '' || !defined('SID'))
return $buffer;

แล้วก็เติม
โค๊ด:
return $buffer;

ก็คือผมไม่ให้มันเขียน url ใหม่นี้เอง ผมก็ยังไม่แน่ใจนะครับว่ามีผลเสียรึเปล่า แต่คิดว่าไม่น่าจะมี


ผิดพลาดอย่างไรขออภัย  wanwan017

ถ้าใครมีวิธีที่ดีกว่า ก็แนะนำด้วยครับ

ขอบคุณครับ
เดียวจะลองทำดูใหม่
บันทึกการเข้า
mr.chammie
สมุนแก๊งเสียว
*

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

กระทู้: 623



ดูรายละเอียด
« ตอบ #4 เมื่อ: 08 มีนาคม 2013, 23:41:45 »

หมายถึง เอา return $buffer;  ออกใช่ไหมคับ   ตอบหน่อย + ให้คับ
« แก้ไขครั้งสุดท้าย: 08 มีนาคม 2013, 23:59:20 โดย mr.chammie » บันทึกการเข้า

หน้า: [1]   ขึ้นบน
พิมพ์