[Allegro] Vb.338 : avanti und sein Port

aresqa allegro aresqa at gmail.com
Mo Sep 13 14:50:58 CEST 2021


Verlautbarung 338 zur allegro-Entwicklung                    2021-09-13
-----------------------------------------

avanti und sein Port
--------------------

Wenn plötzlich ein Webkatalog auf Windows-Server nicht mehr funktioniert,
dann liegt das sehr wahrscheinlich an avanti. Genauer gesagt, es kann
passieren, dass die Pforte, durch die der Weg zu "avanti" hinführt,
von einer anderen Software usurpiert wurde. Eine datentechnische Pforte
wird quasi als Portal empfunden und deshalb "Port" genannt, und jeder
solche hat eine eindeutige Nummer. Als Verbindung mit der Außenwelt
reicht dann ein einziges Kabel, d.h. eine einzige reale Pforte!
Die ein und aus strömenden Daten laufen alle über dasselbe Kabel,
das somit ein Bündel von virtuellen Drähten ist.
Die Daten strömen paketweise herein und hinaus, jedes Paket beginnt
mit der Port-Nummer, das Betriebssystem kann damit die Daten korrekt
dem zuständigen Programm zuführen, z.B. avanti.
Als Standard für avanti wurde irgendwann früher mal Port Nummer 4949
gesetzt. Wenn man das überprüfen will, gibt man diesen Befehl:

netstat -ab >ports.lst
    der listet alle Ports auf, die momentan in Gebrauch sind.
    Die Liste steht hernach in der Datei ports.lst, wo man sie
    inspizieren kann. Für jeden Port sieht man zwei Zeilen,
    für avanti sehen die so aus:

     TCP    0.0.0.0:4949           DESKTOP-M5RP8UE:0      LISTENING
     [avanti.exe]

    Achtung: Man erschrickt über die große Zahl von Programmen,
    überwiegend sind das "Dienste", die im System andauernd werkeln.

  Ein anderes brauchbares Tool für diesen Zweck ist "cports":
     https://www.nirsoft.net/utils/cports.html#DownloadLinks

Akut wurde so ein Fall jetzt beobachtet:

  4949 tat es nicht mehr,
  6787 wurde statt dessen gewählt, damit ging's dann wieder.

Man könnte vermutlich auch viele andere Nummern nehmen.
Eine Liste der "standardisierten Ports" findet man hier:
  https://de.wikipedia.org/wiki/Liste_der_standardisierten_Ports
Da scheint es keine Lücke zu geben, aber viele Nummern in den
diversen Bereichen sind de facto ungenutzt, man muss also nur eine finden.

Damit's wirksam wird, muss man die neue Nummer statt 4949 eintragen:
  a) in avanti.con (im ProgDir, z.B. c:\allegro)
     da muss dann diese Zeile stehen:
        port = 6787

  b) in ajax4ini.php  im Web-Ordner jeder betroffenen Datenbank.
     z.B. steht da:
        $Server = "127.0.0.1";  (in Windows heißt der auch "localhost")
        $Port = "6787";

Den "Dienst" avanti vorher anhalten, dann aus der Liste der "Dienste"
entfernen. Wie macht man das? Dazu gibt es viele Anleitungen, hier ist
eine ganz ausführliche:

https://it-stack.de/23/03/2010/windows-dienste-loschen-registry-oder-der-sc-befehl/

danach neu starten:  avanti -install  (im ProgDir von allegro)
woraufhin man z.B. dieses Protokoll sieht:

  trying to open C:\allegro\avanti.con on startpath C:\allegro
  opening C:\allegro\avanti.con succeeded
  opening C:\allegro\avanti.con succeeded
  opening C:\allegro\avanti.con succeeded
  Installed as a service successfully.
  Usage: [-install|-remove]

  -install .... install the server as a Windows NT service
  -remove  .... remove  the server as a Windows NT service

Und das war's schon. avanti steht dann in der Liste der "Dienste".
-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: <http://bibservices.biblio.etc.tu-bs.de/pipermail/allegro/attachments/20210913/0c4598a5/attachment.htm>


Mehr Informationen über die Mailingliste Allegro