Erweiterungsmodule für den Apache-Webserver. Installieren von Webserver-Erweiterungsmodulen. Herstellen einer Verbindung zu einer veröffentlichten Infobase über einen Webbrowser

Im 1C:Enterprise-System 8. In diesem Artikel betrachten wir den Prozess der Veröffentlichung eines Konfigurationsspeicherservers auf dem IIS-Webserver, um über das Protokoll auf die vom Server bereitgestellten Speicher zugreifen zu können http(oder https).

1. Installation des 1C:Enterprise-Konfigurationsspeicherservers 8

Zunächst ist es notwendig, den Konfigurations-Repository-Server selbst zu installieren, da die Veröffentlichung direkt für den Server erfolgt und über diesen eine Interaktion mit dem Repository erfolgt. Lesen Sie mehr dazu im Artikel:

2. Installation des IIS-Webservers

Als nächstes müssen Sie den in Windows enthaltenen IIS-Webserver aktivieren, sofern dies noch nicht geschehen ist. Der Webserver und der Konfigurationsspeicherserver können sich entweder auf demselben Computer oder auf verschiedenen Computern im selben lokalen Netzwerk befinden. Bei der Installation müssen Sie folgende Komponenten auswählen:

  • Allgemeine HTTP-Funktionen
    • Statischer Inhalt
    • Standarddokument
    • Durchsuchen von Verzeichnissen
    • HTTP-Fehler
  • Anwendungsentwicklung
    • ASP.NET 3.5
    • .NET-Erweiterbarkeit 3.5
    • ISAPI-Erweiterungen
    • ISAPI-Filter
  • Gesundheit und Diagnostik
    • HTTP-Protokollierung
    • Anforderungsmonitor
  • Management-Tools
    • IIS-Verwaltungskonsole

Mehr zur Installation des IIS-Webservers in verschiedenen Betriebssystemen der Windows-Familie können Sie in den folgenden Artikeln lesen:

Nach der Installation des Webservers sollte auf einem Computer mit IIS-Server die Startseite im Browser unter http://localhost ( Standardwebsite) Webserver der entsprechenden Version.

3. Installation der 1C:Enterprise-Webserver-Erweiterungsmodule 8

Auf demselben Computer, auf dem der IIS-Webserver ausgeführt wird, müssen Sie die 1C:Enterprise-Webserver-Erweiterungsmodule Version 8 installieren, die der Version des Konfigurationsspeicherservers ähneln. Darüber hinaus konnte der Konfigurationsspeicherserver zum Zeitpunkt des Schreibens nur eine 32-Bit-Anwendung sein, daher müssen die Webserver-Erweiterungsmodule von einer 32-Bit-Distribution des 1C:Enterprise 8-Systems installiert werden.

Weitere Informationen zur Installation von 1C:Enterprise 8-Programmkomponenten finden Sie im Artikel:

4. Einrichten des Zugriffs auf 1C:Enterprise-Webserver-Erweiterungsmodule 8

Damit der IIS-Webserver mit dem im vorherigen Schritt installierten 1C:Enterprise-Webserver-Erweiterungsmodul 8 arbeiten kann, müssen Sie dem Verzeichnis mit diesen Komponenten (standardmäßig) volle Rechte gewähren C:\Programme (x86)\1cv8\ für „1C:Enterprise“ 8.3 und C:\Programme (x86)\1cv82\ für die Gruppe „1C:Enterprise“ 8.2). IIS_IUSRS.

Klicken Sie dazu mit der rechten Maustaste auf das gewünschte Verzeichnis und wählen Sie „ Eigenschaften» (Eigenschaften) im Kontextmenü.

Gehen Sie im Eigenschaftenfenster auf „ Sicherheit" (Sicherheit) und drücken Sie die Taste " Ändern» (Bearbeiten...), um bestehende Berechtigungen zu ändern. Das Berechtigungsfenster für dieses Verzeichnis wird angezeigt. Klicken Sie darin unter der Liste auf „ Gruppen oder Benutzer» (Gruppen oder Benutzernamen)-Schaltfläche « Hinzufügen„(Hinzufügen..), und klicken Sie im Fenster zur Auswahl von Gruppen oder Benutzern auf „ Zusätzlich"(Fortschrittlich...).

Klicken Sie dann rechts auf die Schaltfläche „ Suchen„(Jetzt suchen)“ und wählen Sie dann die gewünschte Gruppe aus IIS_IUSRS in der Suchergebnistabelle und klicken Sie auf „ OK».

Gruppe IIS_IUSRS erscheint in der Liste der Gruppen oder Benutzer. Wir geben ihm volle Rechte für das ausgewählte Verzeichnis und klicken auf „ Anwenden» (Übernehmen), um die Änderungen zu speichern.

5. Erstellen Sie eine Konfigurationsdatei

Als nächstes fahren wir direkt mit der Veröffentlichung des zuvor installierten Konfigurationsspeicherservers auf dem zuvor installierten IIS-Webserver fort. Beginnen wir mit der Tatsache, dass im Speicherverzeichnis der Site Standardwebsite Webserver (Standard C:\inetpub\wwwroot) erstellen wir ein Verzeichnis mit dem Namen der zukünftigen Veröffentlichung, sei es ein Verzeichnis mit dem Namen Repository.

Und dann erstellen wir in diesem Verzeichnis eine Datei mit der Erweiterung .1ccr(In Analogie zu einem Verzeichnis sei dies eine Datei mit dem Namen Repository.1ccr) und mit Inhalt:

Wo<StorageServerName> Netzwerkname oder IP-Adresse des Computers, auf dem der Konfigurationsspeicherserver läuft.

6. Einrichten der Anwendung in IIS

Wenn Sie nun den Internet Information Services (IIS) Manager starten und die Registerkarten erweitern „ Websites" (Sites) - " Standardwebsite„Wir sehen das Verzeichnis, das wir im vorherigen Schritt erstellt haben. Lassen Sie uns dieses virtuelle Verzeichnis in eine Anwendung umwandeln. Klicken Sie dazu mit der rechten Maustaste darauf und wählen Sie „ In Anwendung konvertieren"(In Anwendung umwandeln).

Anschließend müssen Sie einen Handler für diese virtuelle Anwendung erstellen. Wählen Sie dazu die Anwendung im Verbindungsbaum aus und wählen Sie „ Handler-Zuordnung» (Handlerzuordnungen).

Im sich öffnenden Handler-Mapping-Fenster im Menü „ Aktionen„(Aktionen) rechts das Element auswählen“ Hinzufügen einer Skriptübereinstimmung mit Platzhaltern» (Platzhalter-Skriptzuordnung hinzufügen…).

Das Fenster zum Hinzufügen eines neuen Handlers wird geöffnet. Darin geben wir den Pfad zum 1C:Enterprise-Webserver-Erweiterungsmodul und insbesondere zur Bibliothek an wsisapi.dll, die im Verzeichnis gespeichert ist Behälter, das Verzeichnis, das bei der Installation der 1C:Enterprise-Systemkomponenten in diesem Handbuch angegeben wird. Wir legen auch den Namen des Handlers fest und klicken auf „ OK».

Fügen Sie diese ISAPI-Erweiterung als zulässig zur Liste der ISAPI- und CGL-Einschränkungen hinzu, indem Sie auf „ Ja" (Ja) im angezeigten Fenster.

Danach sollte der neu hinzugefügte Handler in der Handler-Zuordnungsliste unserer virtuellen Anwendung erscheinen. Es bleibt nur noch die Berechtigung zum Ausführen dieses Handlers hinzuzufügen. Klicken Sie dazu mit der rechten Maustaste darauf und wählen Sie „ Funktionsberechtigungen ändern...» (Funktionsberechtigungen bearbeiten...).

Setzen Sie im sich öffnenden Berechtigungsfenster das Flag im Feld „ Leistung„(Ausführen) und drücken Sie „ OK».

Wie ich bereits geschrieben habe, ist der Konfigurationsspeicherserver eine 32-Bit-Anwendung. Dementsprechend müssen Sie dem Anwendungspool, der dieses virtuelle Verzeichnis bedient, erlauben, 32-Bit-Anwendungen auszuführen. Um anzuzeigen, welcher Pool ein bestimmtes virtuelles Verzeichnis bedient, müssen Sie im Verbindungsbaum mit der rechten Maustaste darauf klicken und „ Bewerbungsmanagement" (Anwendung verwalten) - " Zusätzliche Optionen"(Erweiterte Einstellungen...).

Im erscheinenden Fenster wird der Parameter „ Anwendungspool" (Anwendungspool) und definiert den Anwendungspool, der dieses virtuelle Verzeichnis bedient, in diesem Fall ist es das DefaultAppPool. Im selben Fenster können Sie diesen Parameterwert bei Bedarf ändern.

Um einen Anwendungspool für die Arbeit mit 32-Bit-Anwendungen zu konfigurieren, müssen Sie ihn im Fenster „Anwendungspools“ finden, das auf der Registerkarte „ verfügbar ist Anwendungspools„(Anwendungspools) in der Verbindungsstruktur, klicken Sie mit der rechten Maustaste darauf und wählen Sie „ Zusätzliche Optionen…"(Erweiterte Einstellungen).

Ändern Sie im angezeigten Fenster mit den zusätzlichen Anwendungspooleinstellungen den Parameter „ 32-Bit-Anwendungen erlaubt" (32-Bit-Anwendungen aktivieren) auf Wert WAHR.

Es ist notwendig, sich daran zu erinnern (!) dass der Pool in diesem Fall 64-Bit-Anwendungen nicht mehr korrekt verarbeiten wird. Wenn Sie also 64-Bit-Anwendungen auf Ihrem Webserver haben, wie sie beispielsweise von der 64-Bit-Webserver-Erweiterung bereitgestellt werden, sollten Sie einen separaten Anwendungspool erstellen, 32-Bit-Anwendungen darauf aktivieren und ihn als Pool festlegen das aktuelle virtuelle Verzeichnis.

Nachdem Sie die erforderlichen Parameter eingestellt haben, klicken Sie auf „ OK».

7. Stellen Sie eine Verbindung zum Speicher her

Nun sind alle Komponenten des 1C:Enterprise-Systems installiert, die IIS-Webservereinstellungen sind abgeschlossen und Sie können direkt mit der Arbeit mit dem vom Konfigurationsspeicherserver über das Protokoll bedienten Speicher fortfahren http. Um ein Repository zu erstellen (Informationen zum Erstellen eines Repositorys finden Sie im Artikel „“) und Infobases mit dem Repository zu verbinden, müssen Sie eine Adresse wie die folgende verwenden:

http://<ИмяВебСервера>/<ИмяПриложения>/<Файл.1ccr>/<ИмяХранилища>

Für die in diesem Artikel verwendeten Parameter könnte der Name beispielsweise wie folgt lauten:

Http://WIN2012R2/repository/repository.1ccr/Accounting

Http://localhost/repository/repository.1ccr/Accounting

oder sogar so:

https://site/repository/repository.1ccr/Accounting

Hat Ihnen dieser Artikel geholfen?

Durch die Veröffentlichung von 1C auf einem Webserver können Sie die Systemanforderungen für Benutzercomputer so weit wie möglich reduzieren und die in Ihnen implementierten Funktionen voll ausnutzen. Dadurch können Sie die Arbeit mit der Datenbank nicht nur über einen Thin Client, sondern auch über einen beliebigen Browser organisieren, ohne zusätzliche Komponenten und Anwendungen installieren zu müssen.

Primäre Anforderungen

Die Mindestsystemanforderungen für die Serverseite der Architektur können erheblich variieren und hängen stark von Folgendem ab:

  1. Vom Programm gelöste Probleme;
  2. Intensität des Dokumentenflusses;
  3. Anzahl gleichzeitig verbundener Benutzer;
  4. Die Größe und Anzahl der veröffentlichten und registrierten Datenbanken.

Allerdings kann man bei der Veröffentlichung von 1C auf einem Webserver einfach nicht auf zwei Dinge verzichten:

  • Ein im System bereitgestellter Webserver;
  • Ein installiertes und laufendes Erweiterungsmodul von 1C.

Webserver

Dieses Element unserer Struktur kann entweder der Internet Information Server (IIS), der als Teil der Betriebssysteme von Microsoft bereitgestellt wird, oder der Apache-Server sein. Natürlich gibt es kostenpflichtige Analoga dieser Lösungen, aber wir werden nicht darüber sprechen.

Ein zusätzlicher Vorteil von Apache-Produkten ist die Möglichkeit, sie unter Linux-ähnlichen Betriebssystemen auszuführen.

Wir werden die Option mit IIS in Betracht ziehen, weil... Es ist nicht erforderlich, nach Produkten von Drittanbietern zu suchen und diese zu installieren.

Webserver-Erweiterungsmodule

Die Installation dieser Module kann durch Ausführen der Plattformbereitstellungsdatei erfolgen. Wenn Sie das Fenster erreicht haben, dessen Aussehen in Abb. 1 dargestellt ist, müssen Sie die Installation der entsprechenden Komponente aktivieren.

Natürlich muss neben den Erweiterungen auch die 1C Enterprise-Plattform selbst auf dem Computer installiert sein, sonst haben wir keinen Zugriff auf den Konfigurator, über den der Hauptteil der Veröffentlichung erfolgt.

Nachdem wir uns für die Tools entschieden haben, fahren wir mit der Konfiguration fort.

Installieren und Starten eines Webservers

Um IIS auf einem Computer mit installiertem Windows zu starten, müssen Sie die folgende Abfolge von Aktionen ausführen (am Beispiel von Windows 7):


Abb. 3

Sie können sicherstellen, dass der Webserver funktioniert, indem Sie in die Adressleiste eines beliebigen Browsers eine Zeile wie „http://localhost“ eingeben und ein Bild wie in Abb. 4 erhalten.

Abb.4


Abb.6.

In einigen Fällen (insbesondere wenn das Programm unter einem 64-Bit-Betriebssystem läuft) kann es nach der Veröffentlichung der Datenbank auf dem Server erforderlich sein, die Arbeit mit den von der 1C-Plattform verwendeten Bibliotheken weiter zu konfigurieren. Dies kann über das Untermenü „Sites“ erfolgen.

Nachdem Sie eine bestimmte, gerade veröffentlichte Datenbank in der Liste ausgewählt haben, müssen Sie das Dienstprogramm „Handler Matching“ aktivieren (Abb. 7).
Abb.7

In unserem Fall müssen wir eine Korrespondenz zwischen ISAPI-dll und der ausführbaren Datei wsisapi.dll herstellen, die sich im BIN-Ordner der installierten Version der Plattform befindet.

Im Prinzip kann an dieser Stelle der Hauptteil der Arbeit mit dem Server als abgeschlossen betrachtet werden, gehen wir direkt zur Veröffentlichung der Datenbank über.

Veröffentlichen der Datenbank auf dem Server

Benutzerrechte einrichten

Nachdem wir das obige Fenster erhalten haben, fahren wir mit dem Einrichten der Zugriffsregeln für Benutzer fort.

Wir müssen dem Benutzer IIS_USERS vollen Zugriff gewähren:

  • In den Ordner „C:\inetpub\wwwroot\Publikationsname“, in dem die Ressource gespeichert ist;
  • In den Ordner mit der Version des verwendeten Programms, in dem die wsisapi.dll-Bibliothek gespeichert ist;
  • An den Ort, an dem die Datenbank gespeichert ist.

Nachdem wir die oben genannten Schritte ausgeführt haben, können wir die Funktionalität unserer Publikation überprüfen, indem wir eine Zeile wie „localhoct/Publikationsname“ in das Browserfenster eingeben und dort ein Benutzeridentifikationsformular finden.

Jedes Jahr stoßen Betriebssysteme der Linux-Familie auf wachsendes Interesse bei 1C:Enterprise-Benutzern, insbesondere nach der Veröffentlichung der Plattform für die beliebtesten Distributionen. Linux wird am häufigsten als Serverplattform für 1C verwendet, aber in letzter Zeit findet man zunehmend Workstations, die auf diesem Betriebssystem basieren. Wenn Sie einen Webserver zu einem solchen Arbeitsplatz hinzufügen, können Sie den Fernzugriff auf Informationsdatenbanken einfach und unkompliziert organisieren. Wir erklären Ihnen heute, wie das im Dateimodus funktioniert.

Trotz seiner scheinbaren Einfachheit ist die Einrichtung des Webzugriffs auf Dateidatenbanken etwas komplizierter als auf serverbasierte Datenbanken. Dies liegt daran, dass bei diesem Schema die Zugriffsrechte für alle Teilnehmer korrekt festgelegt werden müssen. Die offizielle Dokumentation behandelt dieses Thema eher spärlich, daher werden wir ihm im Folgenden mehr Aufmerksamkeit schenken:

Nach der Veröffentlichung müssen Sie dem Benutzer, in dessen Namen Apache ausgeführt wird, Rechte für das Verzeichnis der ausführbaren Dateien gewähren (/opt/1C/v8.3/i386/ für die 32-Bit-Version oder /opt/1C/v8.3/x86_64). / für die 64-Bit-Version) Bit-Version) einer bestimmten Version des 1C:Enterprise-Systems (Lesen und Ausführen). Im Falle einer Dateiversion der Infobase müssen Sie dem Benutzer, in dessen Namen der Webserver ausgeführt wird, Rechte zum Ändern des Infobase-Verzeichnisses erteilen.

Schauen wir uns also alle Teilnehmer unseres Programms genauer an. Die Schlüsselrolle dabei kommt der Informationsbasis zu, deren Änderungsrechte allen mit ihr verbundenen Clients gewährt werden müssen, sowie den ausführbaren Dateien der Plattform, auf die der Webserver Zugriff haben muss.

Beginnen wir mit der Plattform, auf der sie sich befindet /opt/1C und hat den Besitzer usr1cv8:grp1cv8, dieses Aufzeichnungsformat wird häufig unter Linux verwendet und bezeichnet ein Bundle Benutzergruppe. Genauer gesagt benötigt der Webserver Lese- und Ausführungszugriff auf eine einzige Plattformdatei – die Bibliothek wsap24.so(für Apache 2.4).

Viel interessanter ist es bei einer Informationsbasis, deren Besitzer zunächst ein lokaler Benutzer ist Benutzer:Benutzer, der auch Mitglied der gleichnamigen Personengruppe ist. Standardmäßig verfügt es über alle notwendigen Zugriffsrechte auf die Datenbank (Lesen und Schreiben). Der Webserver, der im Auftrag von arbeitet www-data:www-data.

Es gibt Möglichkeiten, Apache als gewünschten Benutzer auszuführen, aber in der Praxis stellte sich heraus, dass 1C damit nicht funktioniert mpm-itk Auch wenn der Webserver als Systembenutzer gestartet wird, erhalten Sie fast unmittelbar nach dem Start der Datenbank die folgende Fehlermeldung: Sitzung fehlt oder wurde gelöscht.

Daher ist es an der Zeit, sich daran zu erinnern, dass in Linux Rechte festgelegt sind Benutzer, Gruppen Und der Rest, die Standardrechte unterscheiden sich je nach System geringfügig. Ihr Zweck wird durch folgenden Parameter bestimmt: umask Grob gesagt handelt es sich um eine Maske, die von den vollständigen Rechten abgezogen werden muss, um die Standardrechte zu erhalten. In Ubuntu umask gleicht 002 , und in Debian 022 Daher wird der Satz an Standardrechten in Ubuntu/Debian sein 775/755 für Ordner und 664/644 für Dateien.

Bausatz 775/664 gewährt sowohl dem Besitzer als auch der Gruppe Lese-/Schreibrechte und 755/644 - nur an den Eigentümer. Somit ist in Ubuntu der Standardsatz an Rechten völlig für unsere Zwecke geeignet, aber in Debian müssen wir ihn ändern umask An 002 .

Was die Rechte betrifft, ist es notwendig, den Benutzer und den Webserver gegenseitig in die persönlichen Gruppen des jeweils anderen aufzunehmen, sowie den Webserver in die Gruppe des Eigentümers der 1C-Binärdateien. Die Theorie ist klar, kommen wir zur Praxis.

Installieren des Webserver-Erweiterungsmoduls

Wir gehen davon aus, dass Sie die Plattform gemäß unserer Anleitung bereits installiert haben. In diesem Fall benötigen wir Pakete 1c-enterprise83-ws Und 1c-enterprise83-ws-nls ab der Serverauslieferung. Bitte beachten Sie, dass Version und Bitness dieser Pakete mit der Version und Bitness der installierten Plattform übereinstimmen müssen.

Kopieren wir die angegebenen Pakete in einen beliebigen Ordner und installieren sie mit dem Befehl:

Dpkg -i 1c*.deb

Bitte beachten Sie, dass dieser Befehl alle Pakete vom aktuellen Speicherort mithilfe der 1c*-Maske installiert. Seien Sie also vorsichtig und stellen Sie sicher, dass darin nichts Unnötiges enthalten ist.

Anschließend legen Sie den gewünschten Eigentümer für die Plattform fest:

Chown -R usr1cv8:grp1cv8 /opt/1C

Damit ist die Installation des Webservermoduls abgeschlossen.

Installation von Apache 2.4

Ab Plattform 8.3.8 wurde Unterstützung für die aktuelle Version von Apache 2.4 hinzugefügt. Wenn Sie eine frühere Version der Plattform verwenden, müssen Sie Apache auf die Version herunterstufen 2.2, wie in unserem Artikel beschrieben.

Wir raten auch grundsätzlich davon ab, die für 1C:Enterprise verwendete Apache-Instanz für andere Zwecke zu verwenden, da sich 1C, wie wir bereits gesehen haben, als inkompatibel herausgestellt hat mpm-itk Darüber hinaus geht 1C recht frei mit Konfigurationsdateien um, ignoriert virtuelle Hosts und fügt seine Anweisungen direkt zur Hauptkonfigurationsdatei von Apache hinzu.

Natürlich können Sie alles wunderbar manuell konfigurieren, dies erfordert jedoch einen höheren Verwaltungsaufwand beim Hinzufügen neuer Datenbanken. Eine sinnvollere Lösung wäre daher die Zuweisung einer eigenen Apache-Instanz für 1C.

Die Installation erfolgt mit einem einzigen Befehl:

Apt-get install apache2

Das Paket erfordert keine zusätzliche Konfiguration.

Einrichten der erforderlichen Zugriffsrechte

Wenn Sie verwenden Debian, dann sollten Sie sich zunächst einmal ändern umask Systeme auf 002, öffnen Sie dazu die Datei /etc/pam.d/common-session und fügen Sie am Ende die Zeile hinzu:

Sitzung optional pam_umask.so umask=0002

Dann werden wir den Webserver-Benutzer in die 1C-Gruppen und den aktuellen Systembenutzer aufnehmen:

Usermod -a -G grp1cv8 www-data
usermod -a -G Benutzer www-Daten

Nehmen wir auch den aktuellen Benutzer in die Webservergruppe auf:

Usermod -a -G WWW-Datenbenutzer

wo stattdessen Benutzer Es sollte der Name des aktuellen Benutzers verwendet werden.

Danach müssen Sie Rechte für Ordner mit Infobases festlegen, sagen wir, sie befinden sich in /opt/1C_bases:

Chmod -R u=rw,g=rw,o=r,a+X /opt/1C_bases

Sobald Sie mit der Einstellung der Rechte fertig sind, sollten Sie den Server neu starten.

Veröffentlichung der Informationsbasis

Die Datenbank kann auf zwei Arten veröffentlicht werden: über den Konfigurator und über die Befehlszeile. Im Folgenden betrachten wir beide Methoden.

Vor der Veröffentlichung erstellen wir dafür ein Verzeichnis im Arbeitsverzeichnis des Webservers, standardmäßig ist dies der Fall /var/www, wir werden Accounting 3.0 veröffentlichen, also nennen wir das Verzeichnis acc30:

Mkdir /var/www/acc30

Starten wir dazu 1C:Enterprise mit erhöhten Rechten. Führen Sie dazu im Terminal als Superuser Folgendes aus:

/opt/1C/v8.3/i386/1cestart

für 64-Bit:

/opt/1C/v8.3/x86_64 /1cestart

Es öffnet sich ein Standard-1C-Startfenster, aus dem wir die benötigte Datenbank im Konfigurator öffnen. Dann lass uns gehen Verwaltung – Verlagswesen auf dem Webserver und füllen Sie ein kurzes Formular aus:

Auf dem Feld Name Geben Sie das gewünschte an alias Um auf diese Datenbank zuzugreifen, geben Sie sie in die Adressleiste Ihres Browsers ein. Machen Sie sie daher nicht zu lang oder unleserlich. Webserver- Hier ist in unserem Fall alles klar Apache 2.4 und endlich, Katalog- Hier sollten Sie das Publikationsverzeichnis angeben, das wir etwas früher erstellt haben; es sollte nicht mit dem IS-Arbeitsverzeichnis verwechselt werden. Wenn Sie die OData-Schnittstelle und die Webdienste nicht verwenden, müssen Sie diese nicht veröffentlichen.

Nachdem Sie alle erforderlichen Felder ausgefüllt haben, klicken Sie auf die Schaltfläche Veröffentlichen, und stimmen Sie dann der Aufforderung zum Neustart des Webservers zu.

Um über die Befehlszeile zu veröffentlichen, gehen Sie auf einem 32-Bit-System in das Verzeichnis mit den 1C-Binärdateien und führen Sie Folgendes aus:

CD /opt/1C/v8.3/i386/

in 64-Bit:

CD /opt/1C/v8.3/x86_64/

Führen Sie dann das Dienstprogramm aus webinst mit folgenden Parametern:

./webinst -publish -apache24 -wsdir acc30 -dir /var/www/acc30/ -connstr "File=""/opt/1C_bases/acc30/"";" -confpath /etc/apache2/apache2.conf

Auf den ersten Blick ist die Syntax ziemlich kompliziert, aber in Wirklichkeit ist alles ganz einfach. Schauen wir uns jeden Parameter an:

  • veröffentlichen– gibt die erforderliche Aktion an, in diesem Fall die Veröffentlichung. Sie kann weggelassen werden, da dies die Standardaktion ist.
  • Apache24- gibt den Typ des Webservers an; für Apache 2.2 sollte apache22 angegeben werden.
  • wsdir- der Name des Publikationsalias, unter dem über den Browser auf die Datenbank zugegriffen werden soll.
  • dir- Veröffentlichungspfad, das Verzeichnis, das wir im Arbeitsverzeichnis des Webservers erstellt haben
  • connstr– Verbindungszeichenfolge, besteht aus drei Teilen, die jeweils in Anführungszeichen stehen: „File=" – gibt an, dass die Datenbank dateibasiert ist, „/opt/1C_bases/acc30/" – Pfad zum Informationssicherheitsverzeichnis, „; " - Servicesymbol.
  • confpath- Pfad zur Webserver-Konfigurationsdatei.

Chown -R www-data:www-data /var/www

Jetzt können wir versuchen, die Datenbank zu starten, indem wir im Browser über den Hostnamen oder die IP-Adresse darauf zugreifen und den erforderlichen Alias ​​durch einen Schrägstrich auf dem lokalen Computer hinzufügen http://127.0.0.1/acc30.

Ein paar Worte zur Leistung

Im Guten hätte es einen letzten Absatz des Artikels mit einem Fazit und Wünschen geben sollen, aber unser Material wäre ohne das Thema der Durchführung dieser Lösung unvollständig. Da der Webzugriff im Dateimodus meist von kleinen Unternehmen genutzt wird, kommt als Webserver meist ein normaler Büro-PC zum Einsatz. In seiner Rolle nutzten wir eine virtuelle Maschine, der zwei Kerne vom Core i5-4670 und 4 GB RAM zugewiesen wurden, was einer guten Office-Maschine entspricht.

Wenn es keine Fragen zu Prozessor- oder Festplattenressourcen gab, waren wir mit dem RAM-Verbrauch nicht zufrieden. Unten sehen Sie das System unmittelbar nach dem Booten:

Dann haben wir zwei Instanzen der Datenbank (eine im Webclient, die andere im Thin Client) lokal und zwei Instanzen über das Netzwerk gestartet:

Wie Sie sehen, ist der freie Speicher im System aufgebraucht und in die Auslagerungsdatei gegangen. Wenn Sie ein wenig in den Datenbanken arbeiten, wird die Auslagerungsdatei schnell zur Neige gehen. Gleichzeitig läuft auf diesem PC außer 1C nichts anderes, was für eine gewöhnliche Büromaschine nicht typisch ist. Empirisch haben wir herausgefunden, dass Sie für jede Arbeitssitzung mit Konfigurationen wie Enterprise Accounting 3.0 1 GB RAM benötigen.

Okay, wir schließen alle Sitzungen, aber was ist das?

Kurz gesagt, früher funktionierten 1C-Webdienste wie folgt: Bei jedem Start des Webclients oder beim Zugriff auf Webdienste wurde der Apache-Workerprozess gestartet, der das 1C-Weberweiterungsmodul lud und nach Abschluss der Arbeit entlud und sich selbst schloss. Der Nachteil dieser Methode sind die hohen Overhead-Kosten für das Starten und Beenden des Prozesses.

Nun entspricht das Webservices-Modell einer FastCGI-Anwendung, die einmal gestartet wird und auch dann weiterläuft, wenn die Sitzungen mit ihr beendet werden. Lassen Sie uns 1C-Entwickler zitieren:

Sitzungen im Pool werden nach Diensttyp, Dienstname, Benutzer/Kennwort, Trennzeichenwerten und sicherem Modus gespeichert. Darüber hinaus kann es im Pool mehrere Sitzungen mit den gleichen Werten der aufgeführten Details geben.

Beim Aufruf prüft die Plattform, ob eine Leerlaufsitzung mit einer passenden Kombination dieser Angaben vorliegt. Wenn eine solche Sitzung vorhanden ist, wird sie für die Bearbeitung des Anrufs zugewiesen. Wenn keine solche Sitzung vorhanden ist, wird eine neue Sitzung erstellt und zur Verarbeitung zugewiesen.

Die Sitzung wird nach einem Zeitraum der Inaktivität (Session Life Time) automatisch beendet.

Was folgt daraus? Und Tatsache ist, dass, wenn Sie gleichzeitig 4 Arbeitssitzungen mit dem Webserver starten, die Apache-Arbeitsprozesse nach deren Abschluss weiterarbeiten und auf neue Verbindungen warten, und wenn keine vorhanden sind, dann am Ende Sitzungsdauer, die standardmäßig 20 Minuten beträgt, wird abgeschlossen.

Daher müssen Sie über genügend RAM verfügen, um so viele gleichzeitige Clients wie möglich zu unterstützen. Andernfalls kann es aufgrund des Mangels an freiem Speicher zu katastrophalen Leistungseinbußen auf Ihrem System kommen. Auch wenn diese Verbindungen kurzfristiger Natur sind, bleibt der Speicher dafür noch weitere 20 Minuten „reserviert“.

Für kleine Unternehmen können wir empfehlen, die RAM-Menge auf der Grundlage von Überlegungen auf 1 GB pro kostenloser 1C-Lizenz festzulegen. Dadurch haben Sie immer den nötigen Vorrat an freiem Speicher und vermeiden unangenehme Situationen, in denen der Server währenddessen nicht verfügbar ist arbeiten.

  • Stichworte:

Bitte aktivieren Sie JavaScript, um das anzuzeigen
Fortsetzung des Themas:
Verschiedenes

MAIL.RU Beginnen wir mit dem ältesten Maildienst Mail.ru. Nach einem einfachen und verständlichen Registrierungsvorgang erhalten Sie ein Postfach in einer von vier Domains Ihrer Wahl...