SmartCrawl sitemap gives 404 error

SmartCrawl sitemap gives 404 error. I've tried to add the following rules to nginx config file
rewrite ^/(.*/)?sitemap.xml /wp-content/uploads/sitemap.xml last;
Tried to disable all other plugins and to use default WordPress .htaccess, but it doesn't work.

  • Ash

    Hello Jasper

    I can see the sitemap is not created at all. Katya mention in live chat that she can see a sitemap created for subsite ID 2, but when I access the file directly, this doesn't work either. You would see a 404 request for this URL too: https://kwalitei******door.nl/wp-content/uploads/sites/2/sitemap.xml that is subsite ID 2.

    Would you please confirm, 1. if your php has write permission to your folder? And 2. If you have correct nginx rule for multisite. Would you please post here the rule you used for the multisite?

    Have a nice day!

    Cheers,
    Ash

  • Jasper

    Hi Ash,

    PHP has writing permissions, and uses fpm distro. Below is the content of the nginx-file for bouwexpert.online (and its sub-sites):

    # Auto generated nginx config file by DirectAdmin version 1.52.1
    # Modifying this file is not recommended as any changes you make will be
    # overwritten when the user makes any changes to their website

    # For global config changes that affect all Users, see this guide:
    # http://help.directadmin.com/item.php?id=558
    # For local config changes that only affect one User, see this guide:
    # http://help.directadmin.com/item.php?id=3

    server
    {
    try_files $uri $uri/ /index.php?$args;
    rewrite ^/(.*/)?sitemap.xml /home/bouwonline/domains/bouwexpert.online/public_html/wp-content/uploads/sitemap.xml last;
    # Expire rules for static content
    # cache.appcache, your document html and data
    location ~* \.(?:manifest|appcache|html?|xml|json)$ {
    expires -1;
    # access_log logs/static.log; # I don't usually include a static log
    }
    # Media: images, icons, video, audio, HTC
    location ~* \.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|mp4|ogg|ogv|webm|htc)$ {
    expires 1M;
    access_log off;
    add_header Cache-Control "public";
    }
    # CSS and Javascript
    location ~* \.(?:css|js)$ {
    expires 1d;
    access_log off;
    add_header Cache-Control "public";
    }
    location ~* \.(eot|otf|ttf|woff|woff2)$ {
    add_header Access-Control-Allow-Origin *;
    }
    location ~ ^/(status|ping)$ {
    access_log off;
    allow 127.0.0.1;
    allow 37.97.235.106;
    include /etc/nginx/fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_pass unixusr/local/php70/sockets/famme.sock;
    }
    listen 37.247.40.62:80;
    server_name bouwexpert.online http://www.bouwexpert.online kwaliteitsstukadoor.nl http://www.kwaliteitsstukadoor.nl;
    access_log /var/log/nginx/domains/bouwexpert.online.log;
    access_log /var/log/nginx/domains/bouwexpert.online.bytes bytes;
    error_log /var/log/nginx/domains/bouwexpert.online.error.log;
    root /home/bouwonline/domains/bouwexpert.online/public_html;
    index index.php index.html index.htm;
    include /usr/local/directadmin/data/users/bouwonline/nginx_php.conf;
    include /etc/nginx/webapps.conf;
    }

    server
    {
    try_files $uri $uri/ /index.php?$args;
    rewrite ^/(.*/)?sitemap.xml /home/bouwonline/domains/bouwexpert.online/public_html/wp-content/uploads/sitemap.xml last;
    # Expire rules for static content
    # cache.appcache, your document html and data
    location ~* \.(?:manifest|appcache|html?|xml|json)$ {
    expires -1;
    # access_log logs/static.log; # I don't usually include a static log
    }
    # Media: images, icons, video, audio, HTC
    location ~* \.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|mp4|ogg|ogv|webm|htc)$ {
    expires 1M;
    access_log off;
    add_header Cache-Control "public";
    }
    # CSS and Javascript
    location ~* \.(?:css|js)$ {
    expires 1d;
    access_log off;
    add_header Cache-Control "public";
    }
    location ~* \.(eot|otf|ttf|woff|woff2)$ {
    add_header Access-Control-Allow-Origin *;
    }
    location ~ ^/(status|ping)$ {
    access_log off;
    allow 127.0.0.1;
    allow 37.97.235.106;
    include /etc/nginx/fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_pass unixusr/local/php70/sockets/famme.sock;
    }
    listen 37.247.40.62:443 ssl http2;
    server_name bouwexpert.online http://www.bouwexpert.online kwaliteitsstukadoor.nl http://www.kwaliteitsstukadoor.nl;
    access_log /var/log/nginx/domains/bouwexpert.online.log;
    access_log /var/log/nginx/domains/bouwexpert.online.bytes bytes;
    error_log /var/log/nginx/domains/bouwexpert.online.error.log;
    root /home/bouwonline/domains/bouwexpert.online/private_html;
    index index.php index.html index.htm;
    ssl on;
    ssl_certificate /usr/local/directadmin/data/users/bouwonline/domains/bouwexpert.online.cert.combined;
    ssl_certificate_key /usr/local/directadmin/data/users/bouwonline/domains/bouwexpert.online.key;
    include /usr/local/directadmin/data/users/bouwonline/nginx_php.conf;
    include /etc/nginx/webapps.ssl.conf;
    }

    While you are at it, can you also look if the WP Defender settings , because I think the following pieces of code needs to be added here as well, right?

    ## WP Defender - Prevent information disclosure ### Turn off directory indexing
    autoindex off;

    # Deny access to htaccess and other hidden files
    location ~ /\. {
    deny all;
    }

    # Deny access to wp-config.php file
    location = /wp-config.php {
    deny all;
    }

    # Deny access to revealing or potentially dangerous files in the /wp-content/ directory (including sub-folders)
    location ~* ^wp-content/.*\.(txt|md|exe|sh|bak|inc|pot|po|mo|log|sql)$ {
    deny all;
    }
    ## WP Defender - End ##

    ## WP Defender - Prevent PHP Execution ##
    # Stop php access except to needed files in wp-includes
    location ~* ^/home/bouwonline/domains/bouwexpert.online/public_html/wp-includes/.*(?<!(js/tinymce/wp-tinymce))\.php$ {
    internal; #internal allows ms-files.php rewrite in multisite to work
    }

    # Specifically locks down upload directories in case full wp-content rule below is skipped
    location ~* /(?:uploads|files)/.*\.php$ {
    deny all;
    }

    # Deny direct access to .php files in the /wp-content/ directory (including sub-folders).
    # Note this can break some poorly coded plugins/themes, replace the plugin or remove this block if it causes trouble
    location ~* ^/home/bouwonline/domains/bouwexpert.online/public_html/wp-content/.*\.php$ {
    deny all;
    }

    ## WP Defender - End ##

  • Jasper

    Hi James,

    As soon as I try to save settings I get the following message: "Sorry, you are not allowed to access this page."

    Afterwards it is removed from the sub-sites and only accessible again via the Network Admin. Then I activiate it via the Netowrk Admin again, and the same thing happens, etc, etc...

    The following lines are added to config-file:

    define( 'DISALLOW_FILE_EDIT', true );
    define('WP_DEBUG', true);
    define('WP_DEBUG_LOG', true );
    define('WP_DEBUG_DISPLAY', false );
    @ini_set('display_errors', 0 );
    define('WP_MEMORY_LIMIT', '96M');
    define('SCRIPT_DEBUG', false);
    define('MULTISITE', true);
    define('SUBDOMAIN_INSTALL', true);
    define('DOMAIN_CURRENT_SITE', 'bouwexpert.online');
    define('PATH_CURRENT_SITE', '/');
    define('SITE_ID_CURRENT_SITE', 1);
    define('BLOG_ID_CURRENT_SITE', 1);
    define('SUNRISE', 'on');
    define('FORCE_SSL_ADMIN', true);
    define('WP_CACHE', true); // Added by WP Hummingbird
    define( 'WDS_SITEWIDE', false ); // Because of WP Smartcrawl

  • Ash

    Hello Jasper

    I have found something unusual too. When I logged in at your mapped domain site, it kicked me out from the main site. I had to add myself as an user of main site again.

    Also, when I tried to visit your subsite, I get 404. Would you please confirm that too?

    About the error, would you please disable all other plugins, add the required code in nginx conf to make the subsite work and then check the sitemap issue again? You can find the details here: https://premium.wpmudev.org/blog/wordpress-multisite-wordpress-nginx/

    Let us know how it goes.

    Have a nice day!

    Cheers,
    Ash

  • Jasper

    Hi Ash,

    I was thinking: I recently also had a sort of loop where it reloaded the sign-inn page multiple times before automatically signing-in when I was changing between the sites. When I look at 'Domain Mapping' and 'Multi-Domains' it looks like there is sort of an over-kill or something, because the mapped domain is already the domain we want. Maybe this could have something to do with it?

    Another thing that I noticed is that I see the Smartcrawl plugin on both the sites level and the network admin level (I believe that is since the update).

    Can you please notify me when you are going to investigate? Because I would like to try some stuff myself as well.

  • Ash

    Hi there

    I can visit both http://www.bouwexpert.online and http://www.kwaliteitsstukadoor.nl, but you probably mean the 'basis' site right?

    Yes, I was saying about the basis subsite and it's still not accessible.

    I have also seen you didn't have any pages or posts, so I created two test pages and one test portfolios, and then I noticed your site map file is created. I can see the file sitemap.xml inside wp-content/uploads folder. But still, when I visit https://domain.com/sitemap.xml I get a 404 error. Even when I try to direct access https://domain.online/wp-content/uploads/sitemap.xml I still get 404

    Then I did some more testing. I have created a file in /wp-content/uploads/ folder called a.txt. Then I checked with this: https://domain.online/wp-content/uploads/a.txt and it worked. Then I renamed sitemap.xml to a.xml and checked https://domain.online/wp-content/uploads/a.xml and that worked too. But when I visit https://domain.online/wp-content/uploads/sitemap.xml then I get a 404 error.

    That being said, would you please remove the rule:

    rewrite ^/(.*/)?sitemap.xml /wp-content/uploads/sitemap.xml last;

    And then restart the server and check again?

    First check https://domain.online/wp-content/uploads/sitemap.xml and then check https://domain.online/sitemap.xml and let me know if any of these works.

    Is it possible to open a chat when you look into the issue?

    I am sorry, this is not possible to notify before or initiate a chat as we process the tickets based on a queue so we don't know exactly when we will check your ticket next time. Thank you for your understanding.

    Have a nice day!

    Cheers,
    Ash

  • Ash

    Hello Jasper

    That's an improvement at least

    I have checked your site again and found something again which is unusual. kwaliteitsstukadoor.nl domain is added as subsite domain and then you have multi domains that includes the kwaliteitsstukadoor.nl domain again. So, same doamin is pointing to subsite and main site. Besides, you also have domain mapping plugin, that is not needed if you use the mapped domain as site name.

    So, there is a hiccup on your setup. Would you please disable domain mapping, multi domains, create a functional and normal subsite and then try? If it works, then we can go forward to add additional domains on it.

    Let us know how it goes.

    Have a nice day!

    Cheers,
    Ash

  • Jasper

    Hi Ash,

    Hope you've had a nice Christmas, I did! Anyway, to get back to business...

    I removed Multi Domains, but disabling Domain Mapping made the website unreachable. So I commented the "define('SUNRISE', 'on');" line in the config-file and I removed the Domain Mapping plugin from the plugin folder. This way it doesn't seem to affect the site (so I guess I can delete the plugin entirely right?). However, the sitemap of the subsite is still unreachable, and a crawl of the sub-site says it has zero issues and only finds one URL.

    Afterwards I tried to create a new sub-site, but that gives some issues as well.

    - I can create a new site via the Network Admin,
    - and that does create tables in the database,
    - but it doesn't create a folder on the server,
    - and both the back-end and front-end are unreachable.
    - I've unsuccessfully tried mapping via the Admin area and via the DB.

    Not sure how to ix these issues at this point. Any suggestions?

    Best, Jasper

  • Ash

    Hello Jasper

    Let me explain your issues:

    - I can create a new site via the Network Admin,

    -- Good thing

    - and that does create tables in the database,

    -- Positive news

    - but it doesn't create a folder on the server,

    That's correct. Subsite doesn't create any new folder, it is served from the same wordpress installation connecting the database. No physical folder will be created in the root at all.

    - and both the back-end and front-end are unreachable.

    You don't have wildcard subdomain created. Please create wildcard subdomain, must point to same directory of the main site and this is an important part.

    - I've unsuccessfully tried mapping via the Admin area and via the DB.

    Don't map with DB, it might be messed up. Once your subsite is up by doing the above step, we will do this using domain mapping

    Have a nice day!

    Cheers,
    Ash

  • Jasper

    Hi Ash,

    Wildcard is created, and new site is accessible (front and back), but the Sitemap issue remains.

    - When I network activate SmartCrawl it shows as menu item in the subsites, but it also remains visible in the Network Admin area.
    - I've had some instances where I wanted to change settings on a subsite level and got 'not allowed' erros. Although I have trouble recreating those errors.
    - After cloning a site I also have trouble saving changes to pages.

    Could it have something to do with sunrise.php? Which is not needed/active at the moment.

    Seems it has something to do with permissions or something, but I'm not sure how to test/fix this. Thoughts?

    Best, Jasper

  • Ash

    Hello Jasper

    I assume it's something with your nginx config. If you check the subsite URLs:
    http://kwalite********erwerk.nl/sitemap.xml
    https://kwalit********adoor.nl/sitemap.xml

    You will see white screen. If the URLs are wrong, you should see a 404 error, like
    http://kwalite********erwerk.nl/sitemap2.xml
    https://kwalit********adoor.nl/sitemap2.xml

    I edited to sitemap2.xml and now it shows 404 error. So, when you use sitemap.xml, it gets the file but for some reason, it is not rendered in the browser.

    Do you remember what edits you made in the nginx config file?

    Cheers,
    Ash

  • Jasper

    Hi Ash,

    Below the contents of the nginx.conf file. The rewrite rule from before was removed in an earlier stage. All the other contents are put there by my server adminstrator.

    # Auto generated nginx config file by DirectAdmin version 1.52.1
    # Modifying this file is not recommended as any changes you make will be
    # overwritten when the user makes any changes to their website

    # For global config changes that affect all Users, see this guide:
    # http://help.directadmin.com/item.php?id=558
    # For local config changes that only affect one User, see this guide:
    # http://help.directadmin.com/item.php?id=3

    server
    {
    try_files $uri $uri/ /index.php?$args;
    # Expire rules for static content
    # cache.appcache, your document html and data
    location ~* \.(?:manifest|appcache|html?|xml|json)$ {
    expires -1;
    # access_log logs/static.log; # I don't usually include a static log
    }
    # Media: images, icons, video, audio, HTC
    location ~* \.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|mp4|ogg|ogv|webm|htc)$ {
    expires 1M;
    access_log off;
    add_header Cache-Control "public";
    }
    # CSS and Javascript
    location ~* \.(?:css|js)$ {
    expires 1d;
    access_log off;
    add_header Cache-Control "public";
    }
    location ~* \.(eot|otf|ttf|woff|woff2)$ {
    add_header Access-Control-Allow-Origin *;
    }
    location ~ ^/(status|ping)$ {
    access_log off;
    allow 127.0.0.1;
    allow 37.97.235.106;
    include /etc/nginx/fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_pass unixusr/local/php70/sockets/famme.sock;
    }
    listen 37.247.40.62:80;
    server_name bouwexpert.online http://www.bouwexpert.online kwaliteitsschilderwerk.nl http://www.kwaliteitsschilderwerk.nl kwaliteitsstukadoor.nl http://www.kwaliteitsstukadoor.nl;
    access_log /var/log/nginx/domains/bouwexpert.online.log;
    access_log /var/log/nginx/domains/bouwexpert.online.bytes bytes;
    error_log /var/log/nginx/domains/bouwexpert.online.error.log;
    root /home/bouwonline/domains/bouwexpert.online/public_html;
    index index.php index.html index.htm;
    include /usr/local/directadmin/data/users/bouwonline/nginx_php.conf;
    location /
    {
    # access_log off;
    proxy_buffering off;
    proxy_pass http://37.247.40.62:8080;
    proxy_set_header X-Client-IP $remote_addr;
    proxy_set_header X-Accel-Internal /nginx_static_files;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_hide_header Upgrade;
    }
    location /nginx_static_files/
    {
    # access_log /var/log/nginx/access_log_proxy;
    alias /home/bouwonline/domains/bouwexpert.online/public_html/;
    internal;
    }
    include /etc/nginx/webapps.conf;
    }

    server
    {
    try_files $uri $uri/ /index.php?$args;
    # Expire rules for static content
    # cache.appcache, your document html and data
    location ~* \.(?:manifest|appcache|html?|xml|json)$ {
    expires -1;
    # access_log logs/static.log; # I don't usually include a static log
    }
    # Media: images, icons, video, audio, HTC
    location ~* \.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|mp4|ogg|ogv|webm|htc)$ {
    expires 1M;
    access_log off;
    add_header Cache-Control "public";
    }
    # CSS and Javascript
    location ~* \.(?:css|js)$ {
    expires 1d;
    access_log off;
    add_header Cache-Control "public";
    }
    location ~* \.(eot|otf|ttf|woff|woff2)$ {
    add_header Access-Control-Allow-Origin *;
    }
    location ~ ^/(status|ping)$ {
    access_log off;
    allow 127.0.0.1;
    allow 37.97.235.106;
    include /etc/nginx/fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_pass unixusr/local/php70/sockets/famme.sock;
    }
    listen 37.247.40.62:443 ssl http2;
    server_name bouwexpert.online http://www.bouwexpert.online kwaliteitsschilderwerk.nl http://www.kwaliteitsschilderwerk.nl kwaliteitsstukadoor.nl http://www.kwaliteitsstukadoor.nl;
    access_log /var/log/nginx/domains/bouwexpert.online.log;
    access_log /var/log/nginx/domains/bouwexpert.online.bytes bytes;
    error_log /var/log/nginx/domains/bouwexpert.online.error.log;
    root /home/bouwonline/domains/bouwexpert.online/private_html;
    index index.php index.html index.htm;
    ssl on;
    ssl_certificate /usr/local/directadmin/data/users/bouwonline/domains/bouwexpert.online.cert.combined;
    ssl_certificate_key /usr/local/directadmin/data/users/bouwonline/domains/bouwexpert.online.key;
    include /usr/local/directadmin/data/users/bouwonline/nginx_php.conf;
    location /
    {
    # access_log off;
    proxy_buffering off;
    proxy_pass https://37.247.40.62:8081;
    proxy_set_header X-Client-IP $remote_addr;
    proxy_set_header X-Accel-Internal /nginx_static_files;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_hide_header Upgrade;
    }
    location /nginx_static_files/
    {
    # access_log /var/log/nginx/access_log_proxy;
    alias /home/bouwonline/domains/bouwexpert.online/private_html/;
    internal;
    }
    include /etc/nginx/webapps.ssl.conf;
    }

  • Jasper

    Hi Ash,

    Below the (earlier) replies from my server administrator:

    "I toggled your server from nginx to apache so that your htaccess rules work, that has no further influence on the operation of the site."

    "The reason I switched is because I have read that your multi site implementation works better with an Apache core, to still use the Nginx-speed-gain I use Nginx in a reverse proxy."

    "The adaptation that I have made makes it possible to use .htaccess files which make the implementation of the xml sitemap easier (since 90% of the Wordpress plugins assume that you are using Apache). Ask the supplier of the plug-in for the htaccess code that you need to use for the xml site map and implement it in the .htaccess file which is located in the document root of your account. This should solve the problem (if the rewrite rules are the problem, because I had previously done the nginx implementation for you as they passed it to you and unfortunately this did not work)."

    --- .htaccess file ---

    # BEGIN WordPress
    <IfModule mod_rewrite.c>

    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]

    # Force HTTPS
    RewriteCond %{HTTPS} off
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

    # add a trailing slash to /wp-admin
    RewriteRule ^wp-admin$ wp-admin/ [R=301,L]

    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^ - [L]
    RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
    RewriteRule ^(.*\.php)$ $1 [L]
    RewriteRule . index.php [L]

    </IfModule>

    # END WordPress

  • Jasper

    Hi Ash,

    Sorry for all the replies, but since we cannot chat and there's a day between every reply I need to give as much info as possible, otherwise we keep running in circles, but I just did a recrawl after deleting some pages from Bouwexpert.online, and:

    1. It doesn't change the sitemap.
    2. When I visit the sitemap it shows CSS-styling, which I turned off in the settings.
    3. The crawls on the other sites say they only see 1 URL, which is wrong.

    So there's more to it than just rendering.

    Thanks, Jasper

  • Coastal Data

    Hello,

    I have also run into this problem, and I think that the problem is that there is a conflict with the sitemap generated by Jetpack... In my case, turning off the JetPack sitemap was the trick that fixed the problem. Also, if you use another SEO plugin like Yoast, you might have a conflict there, as well.

    To disable the JetPack sitemap, go to WP admin, then JetPack -> Settings, and then click on the Traffic tab. Now scroll down to the Sitemaps section, and click the switch to turn off the switch labeled "Generate XML sitemaps".

    The problem may or may not be resolved right away... If not, go back to the main Dashboard, and you should have the Sitemaps widget there... click "Update sitemap now", and it should then be resolved.

    Let me know if this helps!!!!

    --Jon

  • Mahlamusa

    Hello Jasper

    I hope you are doing great today. I am sorry for the delayed response from our side and thank you for your patience while we were looking into this.

    I have checked your websites and the settings relating to SmartCrawl and compared them with those of my own setup, it seems everything is in order relating to the plugin itself. When accessing the sitemap.xml for a mapped domain (one of the sub sites) I see that it loads like this:

    Checking the Web Console in the browser I see the following error:

    Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://multisite-domain.online/wp-content/plugins/wpmu-dev-seo/includes/admin/templates/xsl/xml-sitemap.xsl. (Reason: CORS header 'Access-Control-Allow-Origin' missing).

    So it seems the sitemap is failing to load due to a violation of Cross Domain Resource Sharing policies set on your website. I then checked your .htaccess file and noticed that you have set your website to allow CORS for specific MIME Types, but the MIME Type of the stylesheet requested is not in those mime types allowed to be shared across domains.

    Could you please try to include the .xls MIME type in the list of MIME Types to be shared across domains, so this MIME Type should have the header

    <FilesMatch "\.(xls)$">
            Header set Access-Control-Allow-Origin "*"
        </FilesMatch>

    Please verify and use the correct syntax, you may add another directive or edit an existing one, its up to you or your web master.

    Once you have done this, please test and let us know if you are able to access the sitemap or not. Please let us know if you still need any further assistance.

    Have a nice day.
    Mahlamusa

    • Jasper

      Hi Mahlamusa,

      Thanks for your answer, was getting worried you gave up . Anyway, I've tried your solution, but it doesn't change anything.

      The sitemaps don't show in Firefox, but in Chrome they do (the page is white, but you can see it in source), and the generated sitemaps are not right, so l think Smartcrawl is not working as supposed to:

      1. All the sitemaps are the same, so crawling is not working right (they all show an old version of the bouwexpert.online-site (main site) with pages that don't exist).
      2. I've unchecked 'add css stylesheet' everywhere, but it is still showing one, so that doesn't seem to work either.

      FYI: initially we used your Domain Mapping tool, but we removed it after we ran into some issues and found out WP offers that functionality itself already. Perhaps that has something to do with it?

      --- (part of) wp-config ---

      /* Security stuff */
      define('DISALLOW_FILE_EDIT', true );
      define('FORCE_SSL_ADMIN', true);

      /* Multisite stuff */
      define('MULTISITE', true);
      define('SUBDOMAIN_INSTALL', true);
      define('DOMAIN_CURRENT_SITE', 'bouwexpert.online';
      define('PATH_CURRENT_SITE', '/';
      define('SITE_ID_CURRENT_SITE', 1);
      define('BLOG_ID_CURRENT_SITE', 1);
      define('COOKIE_DOMAIN', $_SERVER['HTTP_HOST']);
      //define('SUNRISE', 'on';

      /* Plugin stuff */
      define('WDS_SITEWIDE', false); // Because of WP Smartcrawl

      ---

      P.S.: if we can schedule a chat-session or something that would be great, because this is not really moving forward. A lot of time is wasted.
      P.S.2: could it have something to do with the settings at Admin level (see image)?