Avatar billede mergelspir Seniormester
03. december 2017 - 18:08

Kopiere en fil fra web-server til web-server

Jeg har to web-servere A og B på to forskellige webhoteller.
Linux/Apache/Tomcat

Jeg vil gerne have, at når en bruger (ved hjælp af en servlet) uploader et billede til server A, så kopieres billedet derefter fra server A til server B.
Hvordan gøres dette sikrest uden at benytte et password?

Forslag:
Jeg forestiller mig, at  en servlet a på server A starter et shellscript (cgi-fil) på Server B, der så kopierer filen fra server A. Når filen så er kopieret til server B, returnerer shellscriptet en returkode til servlet a om resultatet af kopieringen.
Hvorfor denne omvej? For at undgå eksterne skriverettigheder til de kataloger, hvor billederne ligger.  Det er kun de respektive servlets, der har skriverettigheder til katalogerne på deres egne servere.
MEN, hvordan får en servlet a på server A startet en cgi-fil på server B?!?
Jeg har forsøgt med:
Process proc = Runtime.getRuntime().exec("serverB.com/cgi-bin/kopierfil.cgi " + billedfilnavn);
proc.waitFor();
Men jeg får fejlen:
java.io.IOException: Cannot run program "serverB.com/cgi-bin/kopierfil.cgi": error=13, Permission denied

Jeg har to spørgsmål:
1) Ad ovenstående, hvordan får jeg en servlet på een server til at starte en cgi-fil på en anden server?
2) Forslag til alternative (sikkerhedsmæssigt forsvarlige) metoder.

På forhånd tak...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Uanset kodesprog, så giver vi dig mulighederne for at udvikle det, du behøver.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester