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

เริ่มโดย okgofun, 30 ตุลาคม 2007, 16:54:26

หัวข้อก่อนหน้า - หัวข้อถัดไป

0 สมาชิก และ 1 ผู้มาเยือน กำลังดูหัวข้อนี้

okgofun

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

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

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

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

payu


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


[direct=http://www.facebook.com/iipayu]payu on facebook[/direct]

exboy

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

อย่างโฮสที่ผมใช้อยู่เค้าก็ปิดไว้ ไปขอให้เปิดก็ไม่ยอมด้วย

Dr.K

[direct=https://www.thaihealth.net/blog/seo_doctor/]seo blog[/direct]|[direct=https://netplushost.com]netplushost[/direct]
[direct=https://pattayawebmarketing.com/pattaya-seo]pattaya seo[/direct]
[direct=https://dochost.net]seo hosting[/direct]

technomatch

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

moonoi

<?php

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

?>

ปล. ต้องเป็น source นะครับ ที่จะนำมา include

okgofun

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

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

ขอบคุณครับ
จะต้องทำให้ได้เดือนละอย่างต่ำ $1,000 แล้วก็ไม่โดนแบน

EThaiZone

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

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

กรณีแรก ต้องการส่งต่าตัวแปรข้ามเว็บ เช่น 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 เป็นแค่ฟังค์ชั่นสารพัดประโยชน์ที่คนมักนึกถึง เพราะมันง่าย

okgofun

อ้างถึงจาก: EThaiZone ใน 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 เป็นแค่ฟังค์ชั่นสารพัดประโยชน์ที่คนมักนึกถึง เพราะมันง่าย

ขอบคุณมากๆครับ ได้ประโยชน์มากเลย  :D
จะต้องทำให้ได้เดือนละอย่างต่ำ $1,000 แล้วก็ไม่โดนแบน

แอร๊ยยยๆๆๆ

ผมว่าชีวิตนี้ ผมคงไม่ได้ใช้หรอก อิิอิ

chinakron

น่าสนใจครับ เคยคิดทำเหมือนกัน ;D