Puncte:0

Rescrierea regulii nu se trezește pe Nginx

drapel in

Vreau să redirecționez de la /sitemap.xml la /sitemap_index.xml.

Deci, am contactat dezvoltatorul pluginului și am primit următoarea regulă de rescriere.

    # START Nginx Rewrites for Rank Math Sitemaps
    rescrie ^/sitemap_index.xml$ /index.php?sitemap=1 ultimul;
    rescrie ^/([^/]+?)-sitemap([0-9]+)?.xml$ /index.php?sitemap=$1&sitemap_n=$2 ultimul;
    # END Nginx Rewrites for Rank Math Sitemaps

Am pus această regulă de rescriere în două locuri, așa cum se arată mai jos, dar nu funcționează.


Server {

    # START Nginx Rewrites for Rank Math Sitemaps
    rescrie ^/sitemap_index.xml$ /index.php?sitemap=1 ultimul;
    rescrie ^/([^/]+?)-sitemap([0-9]+)?.xml$ /index.php?sitemap=$1&sitemap_n=$2 ultimul;
    # END Nginx Rewrites for Rank Math Sitemaps
}

Server {
    Locație / {
        try_files $uri $uri/ /index.php?$args;       
        # START Nginx Rewrites for Rank Math Sitemaps
        rescrie ^/sitemap_index.xml$ /index.php?sitemap=1 ultimul;
        rescrie ^/([^/]+?)-sitemap([0-9]+)?.xml$ /index.php?sitemap=$1&sitemap_n=$2 ultimul;
       # END Nginx Rewrites for Rank Math Sitemaps
    }
}

Am încercat alte servere nginx pentru că există o problemă cu configurația serverului meu Nginx, dar nici nu funcționează.

Versiunea nginx: nginx/1.21.6
Versiunea nginx: nginx/1.21.4

Poate cineva să-mi spună ce parte ar trebui să schimb pentru a rezolva această problemă?

Sau

există vreo altă modalitate de a redirecționa?

bloc de server complet


fastcgi_cache_path /dev/shm/nginx/ levels=1:2 keys_zone=seoartgallery.com:100m max_size=1g inactive=1440m use_temp_path=off;

harta $http_accept $sufix {
~imagine/webp .webp;
Mod implicit        '';
    }


Server {
    asculta 80;
    root /var/www/seoartgallery.com/htdocs;
    server_name seoartgallery.com www.seoartgallery.com cdn.seoartgallery.com www.cdn.seoartgallery.com;
     add_header Strict-Transport-Security "max-age=0;";
    
    locație = /seo2.txt{}
    locație = /seo1.txt{}
    locație = /daumreviews.txt{}
    locație = /naverseo.txt{}
 
    locație = /npay_product_info{
    }
    
    locație = /npay_product_info.xml{
    }
    
    locație ~ \.(jpg|jpeg|gif|webp)$ {
        try_files $uri =404;
        pauză;
    }
  
   Locație /{
            returnează 301 https://$server_name$request_uri;
        }

}


Server {
    asculta 80;
    nume_server artist.seoartgallery.com www.artist.seoartgallery.com;
    Locație /{
            returnează 301 https://$server_name$request_uri;
        }

}



##ì¬ê¸°ìë¶í° ì¸ì¤ìí¸ ë³¸ ííì´ì§ ì¤ì




Server {
    asculta 443 ssl http2;
    asculta [::]:443 ssl http2;
    nume_server seoartgallery.com www.seoartgallery.com link.seoartgallery.com www.link.seoartgallery.com;
    root /var/www/seoartgallery.com/htdocs;
 
    index index.php index.html index.htm;
    
    # START Nginx Rewrites for Rank Math Sitemaps
    rescrie ^/sitemap_index.xml$ /index.php?sitemap=1 ultimul;
    rescrie ^/([^/]+?)-sitemap([0-9]+)?.xml$ /index.php?sitemap=$1&sitemap_n=$2 ultimul;
    # END Nginx Rewrites for Rank Math Sitemaps




    ssl_certificate „/etc/letsencrypt/live/seoartgallery.com/fullchain.pem”;
    ssl_certificate_key „/etc/letsencrypt/live/seoartgallery.com/privkey.pem”;
    ssl_dhparam „/etc/ssl/certs/dhparam.pem”;
    
    # Setați cache-urile, protocoalele și cifrurile acceptate. Această configurație va merita un scor A+ SSL Labs.
    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 3m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
    ssl_prefer_server_ciphers activat;
    ssl_ciphers 'ECDH+AESGCM:ECDH+AES256:ECDH+AES128:DH+3DES:!ADH:!AECDH:!MD5';
    ssl_session_tickets off;
    ssl_ecdh_curve X25519:prime256v1:secp521r1:secp384r1;
    ssl_capsare activată;
    ssl_stapling_verify on;
    ssl_trusted_certificate /etc/letsencrypt/live/seoartgallery.com/chain.pem;
    resolver 8.8.8.8 8.8.4.4 valid=300s;
    resolver_timeout 5s;
    ssl_buffer_size 4k;




  locație ~ /wp-content/(?<cale>.+)\.(?<ext>jpe?g|png|gif)$ {
        add_header Variază Accept;
                expiră 365d;
       try_files /wp-content/uploads-webpc/$path.$ext$sufix /wp-content/$path.$ext$suffix $uri =404;
    }


    client_body_in_file_only clean;
    client_body_buffer_size 16k;
    send_timeout 30s;
    
    access_log off;
    error_log /var/log/nginx/seoartgallery.com.error.log;

        setați $skip_cache 0;

        dacă ($request_method = POST) {
                setați $skip_cache 1;
               setați $skip_reason „POST”;

        }
        if ($query_string != "") {
                setați $skip_cache 1;
               setați $skip_reason „QUERY_STRING”;

        }
        dacă ( $cookie_woocommerce_items_in_cart = "1" ){ 
        setați $skip_cache 1; 
       setați $skip_reason WP_WooCommerce;

        } 
        dacă ( $cookie_woocommerce_cart_hash = "1" ){ 
        setați $skip_cache 1; 
       setați $skip_reason WP_WooCommerce;

        } 
        dacă ( $cookie_wp_woocommerce_session_[a-z0-9] = „1” ){ 
        setați $skip_cache 1; 
           setați $skip_reason WP_WooCommerce;
        } 
        dacă ( $cookie_wp_automatewoo_visitor_[a-z0-9] = „1” ){ 
        setați $skip_cache 1; 
           setați $skip_reason automatewoo;
        } 
        dacă ( $cookie_wp_automatewoo_session_started = "1" ){ 
        setați $skip_cache 1; 
           setați $skip_reason automatewoo;
        } 
        
    # Reguli de ignorare a memoriei cache specifice WooCommerce
    if ($request_uri ~* "/my-account-2.*|/thskan.*|/store.*|/cart.*|/my-account.*|/checkout.*|/addons.*") {
    setați $skip_cache 1;
       setați $skip_reason WP_WooCommerce;
    }

    if ( $arg_add-to-cost != "" ) { 
    setați $skip_cache 1; 
       setați $skip_reason add-to-cos;
    }
    dacă ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wp_automatewoo_session_started|wp_automatewoo_visitor_[a-z0-9]|arlsf_c|wp_automatewoo_[a-z0-9]|wp_automatewoo_session_word|wp_automatewoo_visitor_[a-z0-9] | |woocommerce_items_in_cart|woocommerce_cart_hash|tinv_wishlistkey") {
            setați $skip_cache 1;
           setați cookie-ul $skip_reason;
    }
    
    if ($request_uri ~* "(/contul-meu-2/|/thskan/|/contul-meu/|pum-[a-z0-9]|pum_[a-z0-9]|/checkout/|/ cart/|/wp-admin/|/xmlrpc.php|/wp-(aplicație|cron|login|înregistrare|mail).php|wp-.*.php|/feed/|index.php|wp-comments- popup.php|wp-links-opml.php|wp-locations.php|sitemap(_index)?.xml|[a-z0-9_-]+-sitemap([0-9]+)?.xml)" ) {
            setați $skip_cache 1;
           set $skip_reason uri;

    }

    locație ~ [^/]\.php(/|$) {
        fastcgi_split_path_info ^(.+?\.php)(/.*)$;
        dacă (!-f $document_root$fastcgi_script_name) {
            întoarce 404;
        }

        fastcgi_read_timeout 300;
        fastcgi_pass unix:/run/php/php7.4-fpm.sock;
        fastcgi_index index.php;
        fastcgi_buffers 64 16k; # implicit 8 4k
 
        #ì´ ìëë fastcgi ì¶ê°ë¡ ì ë ¥íê².
        fastcgi_buffer_size 32k;
        
        fastcgi_cache_bypass $skip_cache;
        fastcgi_no_cache $skip_cache;
        fastcgi_cache seoartgallery.com;
        fastcgi_cache_valid 200 1440m;
        
        fastcgi_cache_min_uses 1;
        fastcgi_cache_lock activat;
        
        add_header X-FastCGI-Cache $upstream_cache_status;
        add_header WP-Bullet-Skip $skip_reason;

        fastcgi_cache_valid 404 1m;
        fastcgi_cache_valid 301 302 500 502 504 30m;

       include fastcgi_params;
    }   
        



    
    # Blocați fișierul punct (.htaccess .htpasswd .svn .git .env și așa mai departe.)
    locație ~ /\. {
        nega totul;
    }
 
    # Blocați accesul (fișier jurnal, binar, certificat, script shell, fișier dump sql).
    locație ~* \.(log|binar|pem|enc|crt|conf|cnf|sql|sh|key|yml|lock)$ {
        nega totul;
    }
    
 
    # Blocați accesul
    locație ~* (compozitor\.json|compozitor\.lock|compozitor\.phar|contributing\.md|licență\.txt|readme\.rst|readme\.md|readme\.txt|copyright|artisan|gulpfile\ .js|pachet\.json|phpunit\.xml|access_log|error_log|gruntfile\.js)$ {
        nega totul;
    }
 
    locație = /favicon.ico {
        log_not_found off;
        access_log off;
    }
 
locație /test5{
        try_files $uri $uri/ /test5/index.php?$args;

        locație ~ \.php$ {
                include snippets/fastcgi-php.conf;
                fastcgi_pass unix:/run/php/php7.4-fpm.sock;
        }

}
 
   locație ^~/.well-known/apple-developer-merchantid-domain-association {
        permite tuturor;
  }


     locație ~* \.(?:ttf|ttc|otf|eot|woff|woff2|font.css|css|js)$ {
    add_header Acces-Control-Permite-Origine „*”;
    expira max;
    }
 
     client_max_body_size 100M;
     
     

    Locație / {
        try_files $uri $uri/ /index.php?$args;       
        add_header Acces-Control-Permite-Origine *;
        

    }

    locație = /wp-login.php {
    limit_req zone=o explozie=5 nodelay;
    }

    # Permite programul de validare a domeniului Lets Encrypt
    locație ^~ /.well-known/acme-challenge/ {
        permite tuturor;
    }
    
    
      # Configurație Rocket-Nginx
    includ rocket-nginx/conf.d/default.conf;
     include optimization/*.conf;
    #include conf.d/Fastcgi.conf;
}




drapel us
Doriți să faceți o redirecționare HTTP sau redirecționare internă nginx?
drapel in
Bună @TeroKilkanen, am scris deja o redirecționare către https când mă conectez prin http. Pentru această problemă, vreau doar să redirecționez către https://example.com/sitemap_index.xml atunci când accesez https://example.com/sitemap.xml.
drapel us
Îmi pare rău, dar asta nu îmi răspunde la întrebare.Doriți un răspuns de redirecționare HTTP, în care o redirecționare 301 sau 302 este trimisă vizitatorului? Sau doriți ca adresa URL să difuzeze direct celălalt fișier?

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.