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

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

ThaiSEOBoard.comพัฒนาเว็บไซต์Programminginclude ไฟล์ข้าม server ได้ใหมครับ?
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: include ไฟล์ข้าม server ได้ใหมครับ?  (อ่าน 2323 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
okgofun
ก๊วนเสียว
*

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

กระทู้: 396



ดูรายละเอียด
« เมื่อ: 30 ตุลาคม 2007, 16:54:26 »

include ไฟล์ข้าม server ได้ใหมครับ?

ประมาณว่าเรามี 2 host ต้องการข้อมูลจากแหล่งเดียวกัน ซึ่งเก็บไว้อีก host หนึ่ง

แล้วทีนี้ ถ้าผมต้องการ include("") ; ค่าจากไฟล์ใน host นั้นมาใช้แบบข้าม host มันจะได้ใหมครับ

พอมีวิธีการใหมครับ ลองใน localhost แล้วมัน error
บันทึกการเข้า

จะต้องทำให้ได้เดือนละอย่างต่ำ $1,000 แล้วก็ไม่โดนแบน
payu
หัวหน้าแก๊งเสียว
*

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

กระทู้: 1,881



ดูรายละเอียด
« ตอบ #1 เมื่อ: 30 ตุลาคม 2007, 17:42:54 »


ได้ครับ แต่ ...
ต้อง set ค่า allow_url_include เป็น On ใน php.ini ซึ่งไม่มี host ไหนทำ (ยกเว้น host เราเอง) เพราะมันเสี่ยงต่อความปลอดภัยของระบบ


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

exboy
คนรักเสียว
*

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

กระทู้: 150



ดูรายละเอียด
« ตอบ #2 เมื่อ: 30 ตุลาคม 2007, 17:45:16 »

บางเซิฟเวอร์เค้าก็ปิดเอาไว้นะครับ แก้ในเครื่องใช้ได้แล้วแต่พอเวลาอั๊พขึ้นโฮสจริงๆอาจจะไม่ได้

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

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

กระทู้: 6,760



ดูรายละเอียด เว็บไซต์
« ตอบ #3 เมื่อ: 30 ตุลาคม 2007, 18:07:53 »

อันตรายมากเลย Lips Sealed
บันทึกการเข้า

technomatch
บุคคลทั่วไป
« ตอบ #4 เมื่อ: 30 ตุลาคม 2007, 18:42:13 »

ได้ครับ...มันมีอยู่เวบนึงเจอใน hotscripts มันเป็นบทความมีหมวดต่างๆให้เราเอามาใส่ในเวบไฟล์ที่มันแจกเป็น  include  เลยอะ...บทความจะอับเดทอัตโนมัติ
มีอยู่ช่วงนึงมันไม่ขึ้นซะงั้นเลยเอาออก...ตอนนี้กลับไปหาไม่รุ้มันอยู่ไหนแล้ว
ใครเจอก็บอกกันมั่งน้า................ Kiss
บันทึกการเข้า
moonoi
สมุนแก๊งเสียว
*

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

กระทู้: 762



ดูรายละเอียด
« ตอบ #5 เมื่อ: 30 ตุลาคม 2007, 18:54:50 »

<?php

include('http://www.test.com/testphp.txt ');

?>

ปล. ต้องเป็น source นะครับ ที่จะนำมา include
บันทึกการเข้า
okgofun
ก๊วนเสียว
*

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

กระทู้: 396



ดูรายละเอียด
« ตอบ #6 เมื่อ: 30 ตุลาคม 2007, 19:35:41 »

สงสัยจะอันตรายมากๆจริง ไม่ทำดีกว่า

ผมทำเป็นพวก config สำหรับ php ไว้ สงสัยต้องแปลงเป็นข้อมูลลง .txt ก่อน

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

จะต้องทำให้ได้เดือนละอย่างต่ำ $1,000 แล้วก็ไม่โดนแบน
EThaiZone
เจ้าพ่อโลลิค่อน
เจ้าพ่อบอร์ดเสียว
*

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

กระทู้: 12,459



ดูรายละเอียด เว็บไซต์
« ตอบ #7 เมื่อ: 30 ตุลาคม 2007, 20:04:18 »

ทำแบบไม่อันตรายก็พอทำได้ครับ แต่ต้องไว้ใจคนทำเซิร์ฟเวอร์หน่อยนะ
ว่าเขาไม่เล่นซะเอง

ผมจะยกเป็นกรณีให้ฟังนะครับ

กรณีแรก ต้องการส่งต่าตัวแปรข้ามเว็บ เช่น config

เราสามารถใช้ฟังค์ชั่น serialize ในการแปลงจากตัวแปรเป็นข้อความ
และ unserialize แปลงกลับ  (ตัวแปรต้องอยู่ในสภาพ array นะ)

แล้วเวลาเราจะดึงข้อมูล ก็ใช้ file_get_contents ได้ครับ
หรือถ้าเซิร์ฟไม่เปิด fopen_allow ก็ใช้ curl ได้

กรณีสอง ต้องการส่งฟังค์ชั่นการทำงานข้ามเซิร์ฟ

เราก็เอาฟังค์ชั่นให้รองรับการส่งข้อมูลได้ เช่นทำเป็น txt
แล้วใช้  file_get_contents หรือ curl ดึงข้อมูล
แล้วมาใช้คำสั่ง eval กับข้อมูลให้ฟังค์ชั่นมีผลครับ


ต่อมาพูดถึงความปลอดภัย ถ้าต้องการแบบเซฟ มีแนววิธีช่วยหลายวิธี
1. ใช้การเช็คการเข้าถึง เช่นรหัสผ่าน อาจจะทำในรูปรับค่า get หรือ post แล้วเช็ครหัสผ่าน
หรือใช้โค้ดแนวนี้ (เครดิต Tee++;)
โค๊ด:
<?PHP

//เอาไปใส่ในต้นไฟล์นั้น

$username =  "admin";
$password =  "admin";

function authenticate() {
  Header( "WWW-authenticate: basic realm=Protected");
  Header( "HTTP/1.0 401 Unauthorized");
  echo   "You must enter a valid login ID and password! ";
  exit;
}

function CheckPwd($user,$pass) {
  global $username,$password;
  return ($user != $username || $pass != $password) ? false : true;
}

if (!isset($PHP_AUTH_USER)) {
  authenticate();
}
elseif (!CheckPwd($PHP_AUTH_USER,$PHP_AUTH_PW)) {
  authenticate();
}
else {
print 'Correct Congatulation Dude';
}
?>

2.ใช้คลาสการเข้ารหัส/ถอดรหัสข้อมูล ช่วยปกปิกข้อมูลแท้จริงระหว่างการส่ง
ลองแวะไปหาที่ชอบๆ ได้ที่นี้ครับ อิๆ
โค๊ด:
http://www.phpclasses.org/browse/class/20.html

เท่านี้แหละครับ ^^"

ปล. วิธีการเช็คการเข้าถึง มันมีอีกหลายแบบที่เหนี่ยวกว่านี้ แต่คุณต้องลองคิดให้มาก จะนึกออกเองครับ
ปล2. ไม่ต้องใช้ include เลย include เป็นแค่ฟังค์ชั่นสารพัดประโยชน์ที่คนมักนึกถึง เพราะมันง่าย
« แก้ไขครั้งสุดท้าย: 30 ตุลาคม 2007, 20:07:52 โดย EThaiZone » บันทึกการเข้า

okgofun
ก๊วนเสียว
*

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

กระทู้: 396



ดูรายละเอียด
« ตอบ #8 เมื่อ: 30 ตุลาคม 2007, 20:16:12 »

ทำแบบไม่อันตรายก็พอทำได้ครับ แต่ต้องไว้ใจคนทำเซิร์ฟเวอร์หน่อยนะ
ว่าเขาไม่เล่นซะเอง

ผมจะยกเป็นกรณีให้ฟังนะครับ

กรณีแรก ต้องการส่งต่าตัวแปรข้ามเว็บ เช่น config

เราสามารถใช้ฟังค์ชั่น serialize ในการแปลงจากตัวแปรเป็นข้อความ
และ unserialize แปลงกลับ  (ตัวแปรต้องอยู่ในสภาพ array นะ)

แล้วเวลาเราจะดึงข้อมูล ก็ใช้ file_get_contents ได้ครับ
หรือถ้าเซิร์ฟไม่เปิด fopen_allow ก็ใช้ curl ได้

กรณีสอง ต้องการส่งฟังค์ชั่นการทำงานข้ามเซิร์ฟ

เราก็เอาฟังค์ชั่นให้รองรับการส่งข้อมูลได้ เช่นทำเป็น txt
แล้วใช้  file_get_contents หรือ curl ดึงข้อมูล
แล้วมาใช้คำสั่ง eval กับข้อมูลให้ฟังค์ชั่นมีผลครับ


ต่อมาพูดถึงความปลอดภัย ถ้าต้องการแบบเซฟ มีแนววิธีช่วยหลายวิธี
1. ใช้การเช็คการเข้าถึง เช่นรหัสผ่าน อาจจะทำในรูปรับค่า get หรือ post แล้วเช็ครหัสผ่าน
หรือใช้โค้ดแนวนี้ (เครดิต Tee++;)
โค๊ด:
<?PHP

//เอาไปใส่ในต้นไฟล์นั้น

$username =  "admin";
$password =  "admin";

function authenticate() {
  Header( "WWW-authenticate: basic realm=Protected");
  Header( "HTTP/1.0 401 Unauthorized");
  echo   "You must enter a valid login ID and password! ";
  exit;
}

function CheckPwd($user,$pass) {
  global $username,$password;
  return ($user != $username || $pass != $password) ? false : true;
}

if (!isset($PHP_AUTH_USER)) {
  authenticate();
}
elseif (!CheckPwd($PHP_AUTH_USER,$PHP_AUTH_PW)) {
  authenticate();
}
else {
print 'Correct Congatulation Dude';
}
?>

2.ใช้คลาสการเข้ารหัส/ถอดรหัสข้อมูล ช่วยปกปิกข้อมูลแท้จริงระหว่างการส่ง
ลองแวะไปหาที่ชอบๆ ได้ที่นี้ครับ อิๆ
โค๊ด:
http://www.phpclasses.org/browse/class/20.html

เท่านี้แหละครับ ^^"

ปล. วิธีการเช็คการเข้าถึง มันมีอีกหลายแบบที่เหนี่ยวกว่านี้ แต่คุณต้องลองคิดให้มาก จะนึกออกเองครับ
ปล2. ไม่ต้องใช้ include เลย include เป็นแค่ฟังค์ชั่นสารพัดประโยชน์ที่คนมักนึกถึง เพราะมันง่าย

ขอบคุณมากๆครับ ได้ประโยชน์มากเลย  Cheesy
บันทึกการเข้า

จะต้องทำให้ได้เดือนละอย่างต่ำ $1,000 แล้วก็ไม่โดนแบน
แอร๊ยยยๆๆๆ
หัวหน้าแก๊งเสียว
*

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

กระทู้: 2,755



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

ผมว่าชีวิตนี้ ผมคงไม่ได้ใช้หรอก อิิอิ
บันทึกการเข้า

chinakron
คนรักเสียว
*

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

กระทู้: 193



ดูรายละเอียด
« ตอบ #10 เมื่อ: 31 ตุลาคม 2007, 23:42:37 »

น่าสนใจครับ เคยคิดทำเหมือนกัน Grin
บันทึกการเข้า
หน้า: [1]   ขึ้นบน
พิมพ์