Nextcloud Hub 4 (26.0.0) - „X-Robots-Tag“-HTTP-Header ist nicht so konfiguriert, dass er „noindex, nofollow“ entspricht

Hallo User,

nach eine Upgrade von Nextcloud Hub 3 auf Nextcloud Hub 4 bekomme ich folgende Meldung:

Es gibt einige Warnungen bei deiner Systemkonfiguration.

  • Der „X-Robots-Tag“-HTTP-Header ist nicht so konfiguriert, dass er „noindex, nofollow“ entspricht. Dies ist ein potentielles Sicherheitsrisiko und es wird empfohlen, diese Einstellung zu ändern.

Aus 2019 HTTP Header Fehlermeldung Nextcloud [solved] - #4 by Ryuk

Aus 2023 Nach Update Fehler mit der Integritätsprüfung

System: VPN Server Ubuntu 22.04, mit C-Rieger Script installiert.

Wie kann ich das Problem lösen?

MfG
nc-kay

1 Like

Hier selbige Fehlermeldung, hat jemand Ideen zur Lösung?

Lustig:

  • NC 25 meldet einen Hinweis, wenn der X-Robots-Tag nicht none entspricht.
  • NC 26 meldet einen Hinweis, wenn der X-Robots-Tag nicht noindex, nofollw entspricht.

none ist gleichbedeutend mit noindex, nofollow
(siehe: Spezifikationen für Robots-Meta-Tags | Google Search Central  |  Dokumentation  |  Google Developers)

Falls also NC 25 keinen Hinweis eingeblendet hat, dann gibt es eigentlich keinen Grund zur Änderung.
Außer, man möchte den Hinweis loswerden. Die gesendeten Header werden in der Webserver-Konfiguration angegeben (bei Apache möglicherweise auch in einer .htaccess Datei).

EDIT: das Durchgestrichene stimmt so nicht ganz. Siehe Post #9

Außer, man möchte den Hinweis loswerden. Die gesendeten Header werden in der Webserver-Konfiguration angegeben

Den Hinweis möchte ich loswerden, wie mache ich das konkret bei einem Nginx Server?

Ändere

add_header X-Robots-Tag “none” always;

auf

add_header X-Robots-Tag "noindex, nofollow" always;

Btw. C. Rieger hat seine Anleitung bereits dahingehend angepasst: Nextcloud Installationsanleitung - Carsten Rieger IT-Services

7 Likes

Wo genau ändere ich das?

Wo finde ich die richtige Datei?

/etc/nginx/conf.d/nextcloud.conf

Steht im Link, den ich gepostet habe.

1 Like

Das hier anfängliche Problem konnte ich mit den Hinweisen von bb77 lösen.

Jetzt habe ich ein Problem mit dem dyndns-Service, meine Nextcloudinstanz ist nur noch über die IP-Adresse zu erreichen. Liegt das das an der gemachten Änderung?

cat /etc/nginx/conf.d/nextcloud.conf
server {
  listen 443 ssl http2 default_server;
  listen [::]:443 ssl http2 default_server;
  server_name instance-20220817-1043 koludioraaarch.dynv6.net;
  ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem;
  ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;
  ssl_trusted_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem;
  #ssl_certificate /etc/letsencrypt/rsa-certs/fullchain.pem;
  #ssl_certificate_key /etc/letsencrypt/rsa-certs/privkey.pem;
  #ssl_certificate /etc/letsencrypt/ecc-certs/fullchain.pem;
  #ssl_certificate_key /etc/letsencrypt/ecc-certs/privkey.pem;
  #ssl_trusted_certificate /etc/letsencrypt/ecc-certs/chain.pem;
  ssl_dhparam /etc/ssl/certs/dhparam.pem;
  ssl_session_timeout 1d;
  ssl_session_cache shared:SSL:50m;
  ssl_session_tickets off;
  ssl_protocols TLSv1.3 TLSv1.2;
  ssl_ciphers 'TLS- gelöscht für Posting 
  M-SHA384';
  ssl_ecdh_curve X448:secp521r1:secp384r1;
  ssl_prefer_server_ciphers on;
  ssl_stapling on;
  ssl_stapling_verify on;
  client_max_body_size 10G;
  client_body_timeout 3600s;
  client_body_buffer_size 512k;
  fastcgi_buffers 64 4K;
  gzip on;
  gzip_vary on;
  gzip_comp_level 4;
  gzip_min_length 256;
  gzip_proxied expired no-cache no-store private no_last_modified no_etag auth;
  gzip_types application/atom+xml application/javascript application/json application/ld+json application/manifest+json application/rss+xml application/vnd.geo+json application/vnd.ms-fontobject application/wasm application/x-font-ttf application/x-web-app-manifest+json application/xhtml+xml application/xml font/opentype image/bmp image/svg+xml image/x-icon text/cache-manifest text/css text/plain text/vcard text/vnd.rim.location.xloc text/vtt text/x-component text/x-cross-domain-policy;
  add_header Strict-Transport-Security "max-age=15768000; includeSubDomains; preload;" always;
  add_header Permissions-Policy "interest-cohort=()";
  add_header Referrer-Policy "no-referrer" always;
  add_header X-Content-Type-Options "nosniff" always;
  add_header X-Download-Options "noopen" always;
  add_header X-Frame-Options "SAMEORIGIN" always;
  add_header X-Permitted-Cross-Domain-Policies "none" always;
  add_header X-Robots-Tag "noindex, nofollow" always;
  add_header X-XSS-Protection "1; mode=block" always;
  fastcgi_hide_header X-Powered-By;
  root /var/www/nextcloud;
  index index.php index.html /index.php$request_uri;
  location = / {
    if ( $http_user_agent ~ ^DavClnt ) {
      return 302 /remote.php/webdav/$is_args$args;
      }
  }
  location = /robots.txt {
    allow all;
    log_not_found off;
    access_log off;
    }
  location ^~ /apps/rainloop/app/data {
    deny all;
    }
  location ^~ /.well-known {
    location = /.well-known/carddav { return 301 /remote.php/dav/; }
    location = /.well-known/caldav  { return 301 /remote.php/dav/; }
    location /.well-known/acme-challenge { try_files $uri $uri/ =404; }
    location /.well-known/pki-validation { try_files $uri $uri/ =404; }
    return 301 /index.php$request_uri;
    }
  location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)(?:$|/)  { return 404; }
  location ~ ^/(?:\.|autotest|occ|issue|indie|db_|console)  { return 404; }
  location ~ \.php(?:$|/) {
    rewrite ^/(?!index|test|remote|public|cron|core\/ajax\/update|status|ocs\/v[12]|updater\/.+|oc[ms]-provider\/.+|.+\/richdocumentscode\/proxy) /index.php$request_uri;
    fastcgi_split_path_info ^(.+?\.php)(/.*)$;
    set $path_info $fastcgi_path_info;
    try_files $fastcgi_script_name =404;
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param PATH_INFO $path_info;
    fastcgi_param HTTPS on;
    fastcgi_param modHeadersAvailable true;
    fastcgi_param front_controller_active true;
    fastcgi_pass php-handler;
    fastcgi_intercept_errors on;
    fastcgi_request_buffering off;
    fastcgi_read_timeout 3600;
    fastcgi_send_timeout 3600;
    fastcgi_connect_timeout 3600;
    }
  location ~ \.(?:css|js|svg|gif|png|jpg|ico|wasm|tflite|map)$ {
    try_files $uri /index.php$request_uri;
    add_header Cache-Control "public, max-age=15778463, $asset_immutable";
    expires 6M;
    access_log off;
    location ~ \.wasm$ {
      default_type application/wasm;
      }
    }
  location ~ \.woff2?$ {
    try_files $uri /index.php$request_uri;
    expires 7d;
    access_log off;
    }
  location /remote {
    return 301 /remote.php$request_uri;
    }
  location / {
    try_files $uri $uri/ /index.php$request_uri;
    }
}

add_header X-Robots-Tag “noindex, nofollow” always;

1 Like

es entspricht der Dokumentation:
https://docs.nextcloud.com/server/latest/admin_manual/installation/harden_server.html#serve-security-related-headers-by-the-web-server

nein ist es nicht. Bing und andere Suchmaschinen kennen none nicht und es wurde bei Github lange diskutiert… und ist jetzt umgesetzt.

UPDATE: ein weiterer Post dazu

1 Like

@bb77 Danke, das war es.

1 Like

Besteht ein Zusammenhang?

Nein, da besteht kein Zusammenhang. Diese Zeile sagt den Crawlern der Suchmaschinen, dass die Seite nicht indexiert werden soll. Hat also absolut nichts damit zu tun, ob und von wo die Seite erreichbar ist.

Danke, ich habe die Domain erneut mit der IP-Adresse verknüpft.
Jetzt funktioniert es wieder.
Meine Fehlverbastelung kann ich mir nicht erklären.

MfG
nc-kay

1 Like

Danke, hat mir sehr geholfen.

1 Like

Hola,
danke für die Hilfe, hat auch mir geholfen :blush: :+1:

1 Like

top, hat mir geholfen :+1:

1 Like

Danke, das hat auch mir geholfen, habe meine NC Instanz ebenfalls mit C.Rieger’s Skript erstellt.

1 Like