PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : فراخوانی فایل php از هاست دیگر



iroo
March 8th, 2017, 21:59
سلام و خسته نباشید
من یه اسکریپت نوشتم ، میخوام برای امنیت بیشتر و البته پخش نشدن اسکریپت
میخوام یکسری فایل و تابع مهم رو توی هاست خودم نگه دارم و توی اسکریپت منتشر شده این فایل ها رو فراخوانی کنم

خیلی سرچ کردم به نتیجه ای نرسیدم
با incloud و... هم جواب نمیده

راهی هست؟


ممنون میشم کمکم کنید

Reza G
March 8th, 2017, 22:04
به صورت پیشفرض در هاست های لینوکس، اینکلود کردن فایل php از یک سرور دیگه مسدود شده.

دو راه دارید: 1- از طریق php.ini اجازه بدید به allow_url_include (که توصیه نمیشه)

2- از json و php به صورت توام استفاده کنید. البته اینو تست نکردم نمیدونم برای مورد خاص شما جواب میده یا نه

iroo
March 8th, 2017, 22:24
به صورت پیشفرض در هاست های لینوکس، اینکلود کردن فایل php از یک سرور دیگه مسدود شده.

دو راه دارید: 1- از طریق php.ini اجازه بدید به allow_url_include (که توصیه نمیشه)

2- از json و php به صورت توام استفاده کنید. البته اینو تست نکردم نمیدونم برای مورد خاص شما جواب میده یا نه

ممنون
پس چطوری یکسری از طراحان وب برای حفظ امنیت کدهای خودشون اونا رو توی سرور خودشون نگه میدارن؟ یعنی مثلا یک فایل مهم رو روی سرور خودشون دارن

omid1991
March 8th, 2017, 22:33
سلام و خسته نباشید
من یه اسکریپت نوشتم ، میخوام برای امنیت بیشتر و البته پخش نشدن اسکریپت
میخوام یکسری فایل و تابع مهم رو توی هاست خودم نگه دارم و توی اسکریپت منتشر شده این فایل ها رو فراخوانی کنم

خیلی سرچ کردم به نتیجه ای نرسیدم
با incloud و... هم جواب نمیده

راهی هست؟


ممنون میشم کمکم کنید

سلام وقت بخیر

به هیچ وجه اینکارو نکنید سرور شما بخوابه کار کاربر میخوابه و ...
کد کردن فایل ها بهتره

SilverScent
March 8th, 2017, 22:35
عمو خودتو خسته نکن !

اون آدرسی که زدیو مثلا میخوای چیکار کنی ؟ کسی که به سورس اولیه دسترسی داشته باشه به اون سورس هم دسترسی داره !

taksis
March 9th, 2017, 00:23
ممنون
پس چطوری یکسری از طراحان وب برای حفظ امنیت کدهای خودشون اونا رو توی سرور خودشون نگه میدارن؟ یعنی مثلا یک فایل مهم رو روی سرور خودشون دارن

کدوم برنامه نویس خنگی اینکارو کرده؟؟!
حالا آمدیمو سرور شما به هر علت قطع شد !
جدا از اون،خب کسی که بخواد کاری کنه،میره تو سورس نگاه میکنه،لینک فایلهای روی سرور شما رو هم پیدا میکنه برمیداره!
حفظ امنیت کد یه مقوله پیچیده اس،یه راهش کد کردن و لایسنس گذاریه
یه راهشم اینه که شما کلا یه جوری کد بزنی که کسی سر در نیاره ازش!
اما در مجموع،راه تضمینی و صد در صدی وجود نداره که کد شما کپی نشه حتی تو زبانای کامپایلی مثل سی شارپ و asp.net و سی پلاس پلاس
php که جای خود داره،اسکریپتای تجاری و معروفش عین آب خوردن نال و کپی میشه.

shahinmq
March 9th, 2017, 01:35
عرض سلام و احترام ،

طبق گفته ی دوستان تحت هیچ شرایطی اصلا درست نیست چنین کاری انجام بدید.

اگر قصد فروش سورستون رو دارید ، کافیه روی اون لایسنس قرار بدید و کد کنید.

هرچند باز هم دیکد می شه !

قسمت های خدماتی را نیز می تونید به صورت وب سرویس ارائه بدید ، اما نکته ای که دوستان اشاره کردند ، اگر سرور شما به هر دلیل down شد ، احتمالا به خریدارانتون ضرر وارد کرده اید.

پیشنهاد می کنم از همان روش لایسنس و کد کردن استفاده کنید یا اگر واقعا سورستون خیلی حساس هستش هزینه را کاهش بدید و به خریدارتون یک هاست بدید که دسترسی دست خودتون باشه که فکر نمی کنم خریدار زیربار چنین کاری بره.

به هر حال موفق باشید

lizard.tiny
March 9th, 2017, 09:54
سلام

این کار روی میخوایید روی قالب انجام بدید یا اسکریپت ؟

اگه روی قالب هست پیشنهاد میکنم اینکار رو نکنید چون چیزی جز دردسر برای خریدار نداره

اگه هم روی اسکریپت هست پیشنهاد میکنم از روش لایسنسینگ یا محدود سازی اسکریپت به دامنه استفاده کنید

در صورتی که نیاز داشتید اعلام کنید یک سری Sample Code لایسنس گذاری واستون بنویسم و قرار بدم که اسفاده کنید

Aria90
March 9th, 2017, 10:50
درود
یک سوال برای من ایجاد شد
سامانه های پیاملی و برخی سرویس ها اغلب به کاربر سورس نمیدن بلکه فقط میگن دی ان اس خودتونو روی مقدار x بزارید و سورس فراخوانی میشه
بنابرین مشخصه سورس روی سرور خودشونه
میشه برای اسکریپت های اختصاصی هم همچین کاری کرد؟ و سورس رو روی یک سرور اختصاصی قرار داد و از مشتری خواست فقط دی ان اس رو روی سرور مد نظر ست کنه؟
ممنون میشم کسی راهنمایی کنه که چطوری سورس فراخوانی میشه با این روش؟

shahinmq
March 9th, 2017, 12:01
درود
یک سوال برای من ایجاد شد
سامانه های پیاملی و برخی سرویس ها اغلب به کاربر سورس نمیدن بلکه فقط میگن دی ان اس خودتونو روی مقدار x بزارید و سورس فراخوانی میشه
بنابرین مشخصه سورس روی سرور خودشونه
میشه برای اسکریپت های اختصاصی هم همچین کاری کرد؟ و سورس رو روی یک سرور اختصاصی قرار داد و از مشتری خواست فقط دی ان اس رو روی سرور مد نظر ست کنه؟
ممنون میشم کسی راهنمایی کنه که چطوری سورس فراخوانی میشه با این روش؟

عرض سلام و احترام :

بله امکان پذیر هست.

2 حالت پیش میاد شما می تونی فایل هارا برای کاربر آپلود کنی و کاربر با تغییر dns دسترسی داشنه باشه
یا اینکه برنامه حالت داینامیک داشته باشه و نیاز به آپلود برای هر کاربر نباشه درواقع شما آدرس را داخل سیستمتمون مشخص می کنید و زمانی که دامنه با چنین اسمی بالا اومد ، سیستم هم تنظیمات و مشخصات کاربر جدید را در نظر می گیره.

که مورد دوم خیلی بهتره از هر نظر (حجم اشغال شده ی کمتر ، بروز رسانی راحت تر)

مثال ساده تر ، مثل بلاگفا ، یک سیستم هست که داینامیک هستش.

امید وارم منظور بنده را متوجه شده باشید.

phpcoding
March 9th, 2017, 12:14
اگر قرار باشه فایل های سمت سروری از روی هاست های دیگه خونده بشن که سنگ روی سنگ بن نمیشه . هر کس دلش خواست میره فایل های هر کیو دلش بخواد برمیداره . برای انجام اینکار دو راه دارید
اگه میخواید اسکریپتتون پابلیک نشه که دوستان راه های زیادی پیش روتون گذاشتن . یا دسترسی میزبانی ندید به مشتریاتون که خیلی از طراحی ها این کارو انجام میدن . یا لایسنس بزارید براش که البته اصلا این رو پیشنهاد نمیکنم برداشتن لایسنس کد های پی اچ پی مثل کندن پوست موز میمونه . خیلی آسون و راحته . و ...
اگر میخواید فایل ها از روی هاست دیگه خونده بشن میتونید از طریق FTP مشخصات هاست خودتون رو وارد کنید که فایل ها از اونجا خونده بشه . که باز هم این راه منطقی نیست چون برای اینکار شما باید مشخصات هاست مثل آدرس یوزرنیم پورت و کلمه عبور را وارد کنید که در اون صورت باز به هاست شما همه دسترسی دارن و میرن کد هارو برمیدارن . میتونید طبق گفته ی دوستمون از JSON استفاده کنید که جی سان هم به نظرم مناسب نیست . اگر بخواید جی سان استفاده کنید باید روی سرور خودتون یک سرویس API تشکیل بدید که اسکریپتتون برای دریافت اطلاعاتش به سرور شما درخواست ارسال کنه (حالا با هرتکنولوژی که مد نظر هست چه ایجکس چه سوکت) و خروجی فایل جی سان رو بگیره و دیکد کنه . که در این صورت باز هم میشه از طریق کنسل اون آدرس هارو پیدا کرد و ...
ولی باز هم میشه از طریق همین روش جی سان خیلی کارا کرد که البته نیاز به سرور های قوی داره برای ارسال درخواست هایی مثل Soap - CURL - HTTPRquest و ...
روز خوش

a1994n1373
March 9th, 2017, 13:18
سلام و خسته نباشید
من یه اسکریپت نوشتم ، میخوام برای امنیت بیشتر و البته پخش نشدن اسکریپت
میخوام یکسری فایل و تابع مهم رو توی هاست خودم نگه دارم و توی اسکریپت منتشر شده این فایل ها رو فراخوانی کنم

خیلی سرچ کردم به نتیجه ای نرسیدم
با incloud و... هم جواب نمیده

راهی هست؟


ممنون میشم کمکم کنید

درود

به اصل قضیه که مخفی کردن فایل از دست مشتری هست کاری ندارم.

جهت چیزی که شما میخواین می تونین از curl استفاده کنید .

iroo
March 10th, 2017, 09:30
سلام

این کار روی میخوایید روی قالب انجام بدید یا اسکریپت ؟

اگه روی قالب هست پیشنهاد میکنم اینکار رو نکنید چون چیزی جز دردسر برای خریدار نداره

اگه هم روی اسکریپت هست پیشنهاد میکنم از روش لایسنسینگ یا محدود سازی اسکریپت به دامنه استفاده کنید

در صورتی که نیاز داشتید اعلام کنید یک سری Sample Code لایسنس گذاری واستون بنویسم و قرار بدم که اسفاده کنید

سلام

بسیار هم ممنون میشم یه سمپل کد در اختیار قرار بدین
آخه من دیدم تو برخی از اسکریپت ها لایسنس میذارن،؛ کد های اصلی رو میذارن تو سرور خودشون، یا اسکریپت رو محدود میکن به یکسری دامنه، وقتی اسکریپت رو بر میداری و در هاست دیگه ای استفاده میکنی میگه این دامنه مجاز نیست و....

ممنون و متشکرم از شما

- - - Updated - - -


سلام

این کار روی میخوایید روی قالب انجام بدید یا اسکریپت ؟

اگه روی قالب هست پیشنهاد میکنم اینکار رو نکنید چون چیزی جز دردسر برای خریدار نداره

اگه هم روی اسکریپت هست پیشنهاد میکنم از روش لایسنسینگ یا محدود سازی اسکریپت به دامنه استفاده کنید

در صورتی که نیاز داشتید اعلام کنید یک سری Sample Code لایسنس گذاری واستون بنویسم و قرار بدم که اسفاده کنید

برای قالب چطور این کار رو می کنند؟ من الان دو سه تا قالب وردپرس خریدم که یه طوری کردن که فوترش باید آدرس باشه والا خطا میده، تو کدهاش هم چیزی ندیدم، و درضمن قالب خودش لایسنس داره، و اون لایسنس رو عوض میکنم کار نمی کنه

lizard.tiny
March 10th, 2017, 20:15
نمونه کد ساده :

فایل ایندکس جهت برسی دامنه های مجاز :


نمایش فایل در سامانه کد (http://pastecode.ir/?p=6517) - دانلود این فایل از سامانه کد (http://pastecode.ir/?download=6517)


این فایل رو در یک ساب دامنه به عنوان مثال lic.example.com قرار بدید

کارش یک فایل text با نام allow_domains.txt ایجاد کنید

دامنه های مجاز رو باید در فایل allow_domains.txt قرار بدید ( هر دامنه یک در یک خط )

دانلود فایل allow_domains.txt (http://pastecode.ir/?download=6518)



حالا کد زیر رو در محل مناسبی از قالب یا اسکریپت خودتون قرار بدید :


نمایش نمونه کد برسی از سامانه کد (http://pastecode.ir/?p=6520) - دانلود نمونه کد برسی از سامانه کد (http://pastecode.ir/?download=6520)


توجه داشته باشید آدرس http://lic.example.com/index.php رو در نمونه کد برسی باید به آدرس و دامنه وب سرویس خودتون تغییر بدید

MJmoonwalk
March 10th, 2017, 20:30
شما سورس کدت رو روی یک سرور قابل اعتماد قرار بده مثل هاست دی ال یا هاست ایران و این قبیل
vbulletin و wordpress کدباز دارن کار میکنن ولی گیچیدگی کدشون برای هرکسی قابل فهم نیست. میتونی مثل whcms کد گزاری کنی.

iroo
March 10th, 2017, 20:31
نمونه کد ساده :

فایل ایندکس جهت برسی دامنه های مجاز :


نمایش فایل در سامانه کد (http://pastecode.ir/?p=6517) - دانلود این فایل از سامانه کد (http://pastecode.ir/?download=6517)


این فایل رو در یک ساب دامنه به عنوان مثال lic.example.com قرار بدید

کارش یک فایل text با نام allow_domains.txt ایجاد کنید

دامنه های مجاز رو باید در فایل allow_domains.txt قرار بدید ( هر دامنه یک در یک خط )

دانلود فایل allow_domains.txt (http://pastecode.ir/?download=6518)



حالا کد زیر رو در محل مناسبی از قالب یا اسکریپت خودتون قرار بدید :


نمایش نمونه کد برسی از سامانه کد (http://pastecode.ir/?p=6520) - دانلود نمونه کد برسی از سامانه کد (http://pastecode.ir/?download=6520)


توجه داشته باشید آدرس http://lic.example.com/index.php رو در نمونه کد برسی باید به آدرس و دامنه وب سرویس خودتون تغییر بدید

بسیار عالی بود، ممنون و متشکر

حالا یه سوال، من کد آخری رو مثلا گذاشتم تو فوتر سایت، خوب اولا اینکه طرف کد رو میبینه باید اینو کد کنیم
دوم اینکه خوب طرف میاد این قسمت از کد رو حذف می کنه
یعنی چند تا قالب وردپرس دارم، که تنها تو فوترش یه کد php کد شده گذاشتن، هر طوری میکنی نمیتونی اونو پاک کنی، یعنی پاک میکینی خطای لایسنس میده....

lizard.tiny
March 10th, 2017, 20:37
بسیار عالی بود، ممنون و متشکر

حالا یه سوال، من کد آخری رو مثلا گذاشتم تو فوتر سایت، خوب اولا اینکه طرف کد رو میبینه باید اینو کد کنیم
دوم اینکه خوب طرف میاد این قسمت از کد رو حذف می کنه
یعنی چند تا قالب وردپرس دارم، که تنها تو فوترش یه کد php کد شده گذاشتن، هر طوری میکنی نمیتونی اونو پاک کنی، یعنی پاک میکینی خطای لایسنس میده....
درود

فوتر جای مناسبی نیست

پیشنهاد میشه در یکی از فایل های اصلی مثل function قرار بدید که اگه دامنه مجاز نبود قالب یا کد اجرا نشه

-- البته این کد رو پیشنهاد میشه توسعه بدید به دیتابیس متصل کنید همچنین یک الگوریتم بنویسد بنویسید که کد لایسنس که برسی شد تا یک مدت زمان خاص نیازی به برسی مجدد نباشه

این موردی که میفرمایید رو به چندین شکل میشه اجرا کرد

برای فوتر یک تابع نوشته بشه که توی اون برسی بشه اگه دامنه x وجود نداشت خطا بده