Please enable JavaScript to view this site.

Installationshandbuch

Eventuell möchten Sie lieber NGINX als Webserver verwenden. JobRouter stellt .htaccess-Dateien bereit, die Apache konfigurieren. Dies ist für NGINX nicht möglich, da dort eine von der Anwendung unabhängige Konfiguration vorgenommen werden muss. Im Nachfolgenden finden Sie eine beispielhafte nginx.conf-Datei mit allen relevanten Einstellungen analog zu den .htaccess-Dateien von Apache.

Bitte beachten Sie: Stellen Sie sicher, dass die Konfiguration auf Ihr System abgestimmt ist.

Installation von NGINX

sudo curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor | tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null

echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/debian `lsb_release -cs` nginx" | sudo tee /etc/apt/sources.list.d/nginx.list

sudo apt update

sudo apt -y install nginx

sudo apt purge -y apache2

sudo systemctl enable nginx

Einrichtung der NGINX Konfiguration

Um JobRouter zu installieren muss nun im Support Portal die aktuelle Version heruntergeladen und extrahiert werden. In folgender Befehlsfolge muss die entsprechende <JobRouter-Download-URL> ersetzt werden.

sudo mkdir /usr/share/nginx/html/jobrouter

cd /usr/share/nginx/html/jobrouter

sudo wget <JobRouter-Download-URL>

sudo unzip JobRouter_*.zip

sudo rm JobRouter_*.zip

sudo groupadd -g 10001 jobrouter

sudo chown www-data:jobrouter /usr/share/nginx/html/jobrouter -R

sudo rm /etc/nginx/conf.d/default.conf

sudo rm /etc/nginx/sites-enabled/default

Hinzufügen der NGINX JobRouter Konfiguration

sudo echo "server {

 listen 80 default_server;

 listen [::]:80 default_server;

 server_name my.jobrouter.com;

 

 root /usr/share/nginx/html/jobrouter;

 index index.php;

 client_max_body_size 100M;

 

 location / {

         try_files \$uri \$uri/ /index.php\$is_args\$args;

 }

 

 location /logviewer {

         try_files \$uri /logviewer/public/index.php\$is_args\$args;

 }

 

 location /nginx_status {

         stub_status;

         allow 127.0.0.1;

         deny all;

 }

 

 location ~ ^/(status|ping)\$ {

         allow 127.0.0.1;

         include fastcgi_params;

         fastcgi_param SCRIPT_FILENAME \$document_root\$fastcgi_script_name;

         fastcgi_index index.php;

         fastcgi_pass   unix:/var/run/php/php8.1-fpm.sock;

         deny  all;

 }

 

 location /setup/api {

         try_files \$uri /setup/index.php\$is_args\$args;

 }

 

 location /assets/cache/ {

         rewrite /assets/cache/(\d+/)?([a-z]+)/(.+) /assets/fetch.php?directory=\$2&filename=\$3&\$args;

 }

 

 location ~ \.php\$ {

         if (!-e \$request_filename) {

                 rewrite ^/((?!index.php).*)\$ /index.php\$is_args\$args;

         }

         include fastcgi_params;

         fastcgi_split_path_info ^(.+?\.php)(.*)\$;

         fastcgi_param SCRIPT_FILENAME \$realpath_root\$fastcgi_script_name;

         fastcgi_param DOCUMENT_ROOT \$realpath_root;

         fastcgi_param UNENCODED_URL \$request_uri;

         fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;

 }

 

 location ~ /\.ht {

                 deny all;

 }

}" > /etc/nginx/conf.d/jobrouter.conf

sudo systemctl restart nginx