הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   [שאלה] איך אני יוצר מערכת הכי פשוטה להסתרת קישור/נתיב אמיתי - כנסו לפרטים! (https://hosts.co.il/forums/showthread.php?t=19250)

Homie 07-04-06 10:17

[שאלה] איך אני יוצר מערכת הכי פשוטה להסתרת קישור/נתיב אמיתי - כנסו לפרטים!
 
שלום לכל המשתמשים היקרים,

אני מעלה הרבה קבצי PSD וכדומה לאתרי איחסון קבצים כמו Megaupload אך האתרי איחסון שאני מעלה אליהם, נותנים קישור ישיר, לא כמו Megaupload שצריך לחכות זמן, וגם אם מנסים לקחת קישור ישיר לקובץ הוא מחזיר אותך לעמוד שמחכים זמן (כ-60 שניות).

בקיצור אני לא מעוניין שיוצג הקישור מאיפה יורד הקובץ, יעני שהגולש באתר שלי שמוריד יראה בשורת הדפדפן למטה את השורה הבאה:

http://www.movies.co.il/download/download_id.php?id=5

ובקיצור שניכנסים לכתובת הזאת אז זה מוריד את הקובץ שהגדרתי אותו כ-ID 5

וגם אחרי שהקובץ יתחיל לרדת, בחלון ההורדה יהיה כתוב מוריד מ: http://www.movies.com/download/downl....

בקיצור הסתרת הכתובת האמתית, למשל יש לי מערכת הורדות, ושאני מוסיף הורדה אז אני כותב את הקישור ואחרי זה שאני ניגש אל דף ההורדה ששמים את העכבר אז זה גם מבוסס על ID ולא רואים את הכתובת האמיתית, אבל המערכת ההורדות הזאת גדולה ויש לה עיצוב משלה, אני רק רוצה להסתיר כתובות של הורדות, אני חושב שזה דורש רק קובץ אחד שבו יהיה כתוב ש-ID יהיה שווה לכתובת b.co.il קיצר חיפשתי לא מצאתי רק קובץ אחד פשוט שיסתיר לי את זה.

אשמח מאוד אם משהו יסביר לי איך עושים זאת, תודה מראש, אלי.

CSite.co.il 07-04-06 10:59

יש את זה במערכות מוכנות כמו הבניוקר וכדו'..

מצטרף לשאלה רק ל ASP.

תודה.

meshuga 07-04-06 12:53

ציטוט:

נכתב במקור על ידי Homie
שלום לכל המשתמשים היקרים,

אני מעלה הרבה קבצי PSD וכדומה לאתרי איחסון קבצים כמו Megaupload אך האתרי איחסון שאני מעלה אליהם, נותנים קישור ישיר, לא כמו Megaupload שצריך לחכות זמן, וגם אם מנסים לקחת קישור ישיר לקובץ הוא מחזיר אותך לעמוד שמחכים זמן (כ-60 שניות).

בקיצור אני לא מעוניין שיוצג הקישור מאיפה יורד הקובץ, יעני שהגולש באתר שלי שמוריד יראה בשורת הדפדפן למטה את השורה הבאה:

http://www.movies.co.il/download/download_id.php?id=5

ובקיצור שניכנסים לכתובת הזאת אז זה מוריד את הקובץ שהגדרתי אותו כ-ID 5

וגם אחרי שהקובץ יתחיל לרדת, בחלון ההורדה יהיה כתוב מוריד מ: http://www.movies.com/download/downl....

בקיצור הסתרת הכתובת האמתית, למשל יש לי מערכת הורדות, ושאני מוסיף הורדה אז אני כותב את הקישור ואחרי זה שאני ניגש אל דף ההורדה ששמים את העכבר אז זה גם מבוסס על ID ולא רואים את הכתובת האמיתית, אבל המערכת ההורדות הזאת גדולה ויש לה עיצוב משלה, אני רק רוצה להסתיר כתובות של הורדות, אני חושב שזה דורש רק קובץ אחד שבו יהיה כתוב ש-ID יהיה שווה לכתובת b.co.il קיצר חיפשתי לא מצאתי רק קובץ אחד פשוט שיסתיר לי את זה.

אשמח מאוד אם משהו יסביר לי איך עושים זאת, תודה מראש, אלי.

אם הבנתי נכון מה אתה רוצה, עושים header לקובץ פשוט....
PHP קוד:

header("Location: ".$url); 

כמובן שכמו כל header אסור להוציא פלט לפניו.

Tomer 07-04-06 13:14

meshuga
מה שרשמת יציג את הקישור האמיתי לקובץ, הוא צריך להשתמש ב header שמאפשר שינוי שם של קובץ.
חפש על זה מידע ב http://il2.php.net/header

meshuga 07-04-06 13:19

ציטוט:

נכתב במקור על ידי Atom-Bomb
meshuga
מה שרשמת יציג את הקישור האמיתי לקובץ, הוא צריך להשתמש ב header שמאפשר שינוי שם של קובץ.
חפש על זה מידע ב http://il2.php.net/header

if you say so........אני אף פעם לא השתמשתי בזה אז זה מה שעלה לי לראש ;)

BlueNosE 07-04-06 14:29

תחפש פה:
http://il2.php.net/manual/en/security.hiding.php
בקשר לhttp://www.bla.co.il/donload/downl..., תשתמש בsubstr..
http://www.php.net/substr

Homie 07-04-06 16:58

שלום,

ה-Security Hiding ממש לא מתאימה לנושא הזה, בגלל שאיתה אפשר סה"כ להשתמש בסיומות שונות לקבצי PHP ולהסתיר מידע.

וה-Substr, מה הוא קשור? אם כן, איך?

וה-Header, כתוב שהוא מבצע פעולה, כלומר שגם אם הפעולה תיהיה לעבור לכתובת כלשהי, אין זה יסתיר את נתיב/מקור/כתובת הקובץ.

Tomer 07-04-06 17:07

http://il2.php.net/header

header להורדת קבצים. אתה יכול לקבוע שם משלך לקובץ וככה לא ידעו.

LosNir 08-04-06 02:13

נו מה הבעיה?
אתה לוקח את ה ID שהוזן בכתובת (אני משער שאתה יודע איך עושים זאת) ומציב לתוך המשתנה id,
אחרי זה אתה עושה שאילתא SELECT שכוללת WHERE ID='$id' וככה הוא יבחר את השורה המתאימה מהמסד (ואני משער שהמערכת עובדת על מסד), ובתוך המסד צריך להיות שדה שבו יהיה הכתובת של הקובץ, למשל:

PHP קוד:

TABLE downloads
-- ID INTauto_incrmentlength 5
-- URL longtext 

ואז פשוט שולף את הערך של השדה URL ע"י המערך של שליפת הנתונים, למשל כך:

PHP קוד:

$q mysql_query("SELECT * FROM downloads WHERE ID='$id'");
$a mysql_fetch_array($q); 

אז השליפה תתבצע כך:

PHP קוד:

$a[url

ולבסוף מכניס את זה לתוך header, כך:

PHP קוד:

header("location: $a[url]"); 

ואז מה שמתקבל הוא:

PHP קוד:

$id $_GET[id];
$q mysql_query("SELECT * FROM downloads WHERE ID='$id'");
$a mysql_fetch_array($q);
header("location: $a[url]");
echo 
"downloading................"

מקווה שהבנת |שריף|

Homie 08-04-06 21:11

ציטוט:

נכתב במקור על ידי LosNir
נו מה הבעיה?
אתה לוקח את ה ID שהוזן בכתובת (אני משער שאתה יודע איך עושים זאת) ומציב לתוך המשתנה id,
אחרי זה אתה עושה שאילתא SELECT שכוללת WHERE ID='$id' וככה הוא יבחר את השורה המתאימה מהמסד (ואני משער שהמערכת עובדת על מסד), ובתוך המסד צריך להיות שדה שבו יהיה הכתובת של הקובץ, למשל:

PHP קוד:

TABLE downloads
-- ID INTauto_incrmentlength 5
-- URL longtext 

ואז פשוט שולף את הערך של השדה URL ע"י המערך של שליפת הנתונים, למשל כך:

PHP קוד:

$q mysql_query("SELECT * FROM downloads WHERE ID='$id'");
$a mysql_fetch_array($q); 

אז השליפה תתבצע כך:

PHP קוד:

$a[url

ולבסוף מכניס את זה לתוך header, כך:

PHP קוד:

header("location: $a[url]"); 

ואז מה שמתקבל הוא:

PHP קוד:

$id $_GET[id];
$q mysql_query("SELECT * FROM downloads WHERE ID='$id'");
$a mysql_fetch_array($q);
header("location: $a[url]");
echo 
"downloading................"

מקווה שהבנת |שריף|

וזה יסתיר את הנתיב האמיתי?

יעני אין שום דרך לדעת מהי כתובת ה-URL האמתית?

אלי.


כל הזמנים הם GMT +2. הזמן כעת הוא 06:35.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ