10/10/2018, 10:28

Làm sao để 1 file php chỉ run khi được gọi từ 1 website được chỉ định sẵn?

Xin chào,

Ví dụ mình có 1 file php đặt tại website www.getandrun.com/run.php. File này sẽ nhận tham số qua method get để thực thi. Như vậy, nếu ai biết địa chỉ www.getandrun.com/run.php đều có thể lợi dụng.

Mình muốn nó chỉ thực thi khi được gọi từ 1 file php đặt tại 1 website được chỉ định sẵn, ví dụ: www.callandrun.com/call.php

Không biết giải pháp thế nào nhỉ? Mong các cao thủ hỗ trợ. Xin cám ơn.
Vô Thin viết 12:44 ngày 10/10/2018
Đọc sách thêm đi đồng chí, có vẻ như chưa hiểu về cách thức hoạt động của một script, cụ thể là PHP và cách thiết lập quyền truy cập file / thư mục trên server. Sẽ không ai trả lời câu hỏi này, chắc chắn vậy rồi
longvnit viết 12:33 ngày 10/10/2018
Được gửi bởi updn
Xin chào,

Ví dụ mình có 1 file php đặt tại website www.getandrun.com/run.php. File này sẽ nhận tham số qua method get để thực thi. Như vậy, nếu ai biết địa chỉ www.getandrun.com/run.php đều có thể lợi dụng.

Mình muốn nó chỉ thực thi khi được gọi từ 1 file php đặt tại 1 website được chỉ định sẵn, ví dụ: www.callandrun.com/call.php

Không biết giải pháp thế nào nhỉ? Mong các cao thủ hỗ trợ. Xin cám ơn.
Bạn có thể giải quyết như sau:
Dùng CURL chẳng hạn để gọi file www.getandrun.com/run.php thông qua www.callandrun.com/call.php

Trong run.php bạn yêu cầu thêm một biến chẳng hạn như $_GET['passwd'] và thêm code:

if($_GET['passwd'] ! = '<passwd của bạn>')
exit;

Như vậy một khi call.php muốn gọi run.php thì bắt buộc phải thêm một giá trị passwd đúng gửi qua cho run.php để xác nhận.
ngoc_viet08 viết 12:39 ngày 10/10/2018
thuật ngữ run , call , gọi của bác nghĩa là gì ???
updn viết 12:30 ngày 10/10/2018
Được gửi bởi superthin
Đọc sách thêm đi đồng chí, có vẻ như chưa hiểu về cách thức hoạt động của một script, cụ thể là PHP và cách thiết lập quyền truy cập file / thư mục trên server. Sẽ không ai trả lời câu hỏi này, chắc chắn vậy rồi
Đọc câu trả lời của bác longvnit ở trên dùm đi. Đừng lên mặt day đời trong khi mình không biết rõ vấn đề.

[=========> Bổ sung bài viết <=========]

Được gửi bởi longvnit
Bạn có thể giải quyết như sau:
Dùng CURL chẳng hạn để gọi file www.getandrun.com/run.php thông qua www.callandrun.com/call.php

Trong run.php bạn yêu cầu thêm một biến chẳng hạn như $_GET['passwd'] và thêm code:

if($_GET['passwd'] ! = '<passwd của bạn>')
exit;

Như vậy một khi call.php muốn gọi run.php thì bắt buộc phải thêm một giá trị passwd đúng gửi qua cho run.php để xác nhận.
Cám ơn bác giúp đỡ nhé.
thuyduongcd viết 12:37 ngày 10/10/2018
Ví dụ mình có 1 file php đặt tại website www.getandrun.com/run.php. File này sẽ nhận tham số qua method get để thực thi. Như vậy, nếu ai biết địa chỉ www.getandrun.com/run.php đều có thể lợi dụng.
Đúng là bạn cần tìm hiểu kỹ những cái căn bản nhất. Bạn nói có thể bị lợi dụng nhưng mà lợi dụng cái gì? lợi dụng như thế nào? và lợi dụng để làm gì mới được. Tất nhiên vẫn có giải pháp đáp ứng yêu cầu của bạn nhưng chưa chắc giải quyết được vấn đề.
Như vậy một khi call.php muốn gọi run.php thì bắt buộc phải thêm một giá trị passwd đúng gửi qua cho run.php để xác nhận.
Vậy thay vì gọi trực tiếp run.php người ta có thể gọi thông qua file call.php như thường chẳng phải trở thành công cốc hay sao.
Không phân tích rõ vấn đề thì làm sao có giải pháp hay được
updn viết 12:39 ngày 10/10/2018
OK, nói thế này cho rõ nhé. File www.getandrun.com/run.php khi nhận tham số qua method get sẽ xử lý và trả lại kết quả. VD: truy vấn số điện thoại các thành viên trong CLB.

Mình muốn file run.php chỉ thực thi khi được gọi từ 1 số website cụ thể, ví dụ aaaaa.com; bbbbb.net; ccccccc.info mà thôi.

[=========> Bổ sung bài viết <=========]

Mà thôi, search trên google cũng thấy mấy cách, để thử xem sao. Bác nào quan tâm thì xem tại đây:

http://stackoverflow.com/questions/2...ess-a-php-page
Bài liên quan
0