Jag behöver i en php-fil på en server kolla så att den anropas av rätt ip adress så ingen obehörig kan exekvera det. Nån som vet hur man kan kolla det?
Kolla vem som anropar ett script
12 svar · 313 visningar · startad av Prime_66
med $_SERVER['REMOTE_ADDR']
men då får jag klientens ip. jag vill ha ip:et på den webserver som anropar scriptet. alltså grejen är att jag från ett webbhotell ska kunna anropa ett script på en annan server. o det är webbhotellets ip som gör anropet som ska kollas. inte den som trycker på "submit"
Vad menar du med anropa?
På vilket sätt sker anropet?
alltså jag vill att ett script på en annan webbserver ska startas endast om förfrågan kommer från den webserver jag har mina webbsidor på.
allstå om jag kör mina websidor på b-one och har ett annat webbhotell på web10. då ska scriptet som ligger på web10 endast startas om förfrågan kommer ifrån en sida som ligger på b-one. e ru med? :q
jag vill alltså inte att någon obehörig ska kunna starta scriptet.
det är ett form som submittas.
Du svarade inte på frågan, hur sker förfrågan från b-one till web10?
jo..användaren fyller i ett form där också en fil skickas med.
form action blir på det andra webbhotellet
I $_SERVER['HTTP_REFERER'] står vilken sida som användaren kommer ifrån, men den är inte säker att använda ty den kan ändras av klienten (vissa browsers skickar den inte alls).
Problemet kan lösas på några olika sätt, här är två jag kommer på såhär på rak arm.
-
Låt användaren ladda upp filen till b-one och sen sätt ett script på b-one som skickar filen till web10.
-
När användaren kommer till formulärsidan så skickar du ett anrop till web10 med användaren ip-address och ett temporärt lösenord. Lösenordet skickar du även med i action="...". Sen i scriptet på web10 så kollar du så att ip och lösen passar ihop. För att göra det säkrare, sätt en timeout på hur länge lösenordet gäller.
Hmm ok..ja det andra alternativet verkar inte så tokigt.
En fråga som rör samma sak ungefär. Kan man skicka med sessions från den första servern till den andra? Verkar inte så..
Nej, inte direkt, utan du får göra det "själv"
Ok. å då måste jag alltså skicka det som post eller get eller hur.
Ja