| Danke, Thilo! |
| ... |
» schneegans.de » Microsoft FrontPage » FrontPage und VBA » Upload per SSH
Microsoft hat seine öffentlichen Newsgroups (microsoft.public.de.*) zum 1. Juni 2010 abgeschaltet. Darunter fallen auch die bislang von mir betreuten Gruppen microsoft.public.de.frontpage und microsoft.public.de.expression.web.
Ich empfehle meinen Besuchern sowie allen Anwendern von FrontPage und Expression Web, in die deutschsprachige Webautoren-Newsgroup de.comm.infosystems.www.authoring.misc zu wechseln. Beachten Sie auch meine Ankündigung in den Newsgroups.
Mit dem hier vorgestellten VBA-Makro kann FrontPage 2002 auch über SFTP publizieren.
In FrontPage 2002 kann man bequem per Kontextmenü in der Ordnerliste Markierte Dateien veröffentlichen.... Das funktioniert über HTTP, wenn auf einen Server mit FrontPage-Servererweiterungen publiziert wird, sowie über FTP. Ein wesentlicher Nachteil von FTP ist, daß Benutzername und Kennwort unverschlüsselt übermittelt werden. Das neue SFTP vermeidet diese Schwachstelle, indem es auf einer SSH-Verbindung aufsetzt. FrontPage unterstützt SFTP nicht direkt, mittels VBA läßt sich diese Funktionalität jedoch integrieren, so daß SFTP in FrontPage ebenso komfortabel zu verwenden ist wie HTTP oder FTP.
PuTTY ist ein komfortabler und kostenloser SSH-Client für Windows. PuTTY enthält auch einen SFTP-Client namens PSFTP. Dieser läßt sich per Batchdatei steuern. Mein VBA-Makro erstellt diese Batchdatei aus den in der Ordnerliste markierten Dateien und Ordnern und startet PSFTP.
Im Quelltext des Moduls finden Sie die Konstanten PSFTP_PATH und PSFTP_BATCH. PSFTP_PATH muß den kompletten Pfad zur Datei psftp.exe enthalten. Das Makro erstellt die in PSFTP_BATCH angegebene Batchdatei, die dann von PSFTP abgearbeitet wird.
PSFTP_PATH und PSFTP_BATCH betreffen alle Webs. Zusätzlich gibt es mehrere Parameter, die jeweils für ein Web gelten. Das Makro fragt sie beim ersten Start automatisch ab, später können Sie sie unter Extras → Webeinstellungen... → Parameter einsehen und ggf. ändern:
psftp_session | In PuTTY können Sie Verbindungsparameter in sog. Sessions speichern. Den Namen einer solchen Session können Sie hier angeben; dies ist die empfohlene Methode. Die Einstellungen psftp_user, psftp_host und psftp_port sind dann wirkungslos, klicken Sie bei der entsprechenden Abfrage einfach auf „Abbrechen“. |
psftp_user | Benutzername Ihres SSH-Accounts. |
psftp_host | Name des SSH-Servers. |
psftp_port | Port, auf dem der SSH-Server läuft, meistens 22 oder 24. |
psftp_root | Der Pfad zu Ihren Webseiten auf dem SSH-Server. Wenn Ihr Web bspw. in C:\Eigene Webs\Mein Web\ gespeichert ist und Sie für psftp_root /home/sites/site52/web angeben, wird C:\Eigene Webs\Mein Web\index.html als /home/sites/site52/web/index.html auf den Server kopiert. |
|
| Zugriffsrechte für kopierte Dateien, bspw. 644. Dieser Parameter muß meistens nicht angegeben werden. |
|
| Zugriffsrechte für erstellte Verzeichnisse, bspw. 755. Dieser Parameter muß meistens nicht angegeben werden. |
Die Prozedur PSFTP_Selected() können Sie mit einem Menüeintrag oder einem Button der Symbolleiste verknüpfen. Wählen Sie dann in der Ordnerliste einige Dateien und Ordner aus, und starten Sie das Makro. Das Kennwort fragt PSFTP selbst ab: