Я хочу перенаправить с /sitemap.xml на /sitemap_index.xml.
Итак, я связался с разработчиком плагина и получил следующее правило перезаписи.
# START Nginx переписывает карты сайта для Rank Math
переписать ^/sitemap_index.xml$ /index.php?sitemap=1 последним;
переписать ^/([^/]+?)-sitemap([0-9]+)?.xml$ /index.php?sitemap=$1&sitemap_n=$2 последним;
# END Nginx переписывает карты сайта для Rank Math
Я поместил это правило перезаписи в двух местах, как показано ниже, но оно не работает.
сервер {
# START Nginx переписывает карты сайта для Rank Math
переписать ^/sitemap_index.xml$ /index.php?sitemap=1 последним;
переписать ^/([^/]+?)-sitemap([0-9]+)?.xml$ /index.php?sitemap=$1&sitemap_n=$2 последним;
# END Nginx переписывает карты сайта для Rank Math
}
сервер {
место расположения / {
try_files $uri $uri/ /index.php?$args;
# START Nginx переписывает карты сайта для Rank Math
переписать ^/sitemap_index.xml$ /index.php?sitemap=1 последним;
переписать ^/([^/]+?)-sitemap([0-9]+)?.xml$ /index.php?sitemap=$1&sitemap_n=$2 последним;
# END Nginx переписывает карты сайта для Rank Math
}
}
Я пробовал другие серверы nginx, потому что есть проблема с конфигурацией моего сервера Nginx, но он тоже не работает.
Версия nginx: nginx/1.21.6
Версия nginx: nginx/1.21.4
Может ли кто-нибудь сказать мне, какую часть я должен изменить, чтобы решить эту проблему?
Или же
есть ли другой способ перенаправить?
полный серверный блок
fastcgi_cache_path /dev/shm/nginx/levels=1:2 keys_zone=seoartgallery.com:100m max_size=1g inactive=1440m use_temp_path=off;
карта $http_accept $суффикс {
~изображение/webp .webp;
По умолчанию '';
}
сервер {
слушать 80;
корень /var/www/seoartgallery.com/htdocs;
имя_сервера seoartgallery.com www.seoartgallery.com cdn.seoartgallery.com www.cdn.seoartgallery.com;
add_header Strict-Transport-Security "max-age=0;";
местоположение = /seo2.txt{}
местоположение = /seo1.txt{}
местоположение = /daumreviews.txt{}
местоположение = /naverseo.txt{}
местоположение = /npay_product_info{
}
местоположение = /npay_product_info.xml{
}
расположение ~ \.(jpg|jpeg|gif|webp)$ {
try_files $uri = 404;
сломать;
}
место расположения /{
вернуть 301 https://$server_name$request_uri;
}
}
сервер {
слушать 80;
имя_сервера artist.seoartgallery.com www.artist.seoartgallery.com;
место расположения /{
вернуть 301 https://$server_name$request_uri;
}
}
##ì¬ê¸°ìë¶í° ì¸ì¤ìí¸ ë³¸ ííì´ì§ ì¤ì
сервер {
слушать 443 ssl http2;
слушать [::]:443 ssl http2;
имя_сервера seoartgallery.com www.seoartgallery.com ссылка.seoartgallery.com www.link.seoartgallery.com;
корень /var/www/seoartgallery.com/htdocs;
индекс index.php index.html index.htm;
# START Nginx переписывает карты сайта для Rank Math
переписать ^/sitemap_index.xml$ /index.php?sitemap=1 последним;
переписать ^/([^/]+?)-sitemap([0-9]+)?.xml$ /index.php?sitemap=$1&sitemap_n=$2 последним;
# END Nginx переписывает карты сайта для Rank Math
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";
# Установите кеши, протоколы и принятые шифры. Эта конфигурация заслуживает оценки A+ SSL Labs.
ssl_session_cache общий: SSL: 10 м;
ssl_session_timeout 3 м;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers включен;
ssl_ciphers 'ECDH+AESGCM:ECDH+AES256:ECDH+AES128:DH+3DES:!ADH:!AECDH:!MD5';
ssl_session_tickets выключен;
ssl_ecdh_curve X25519:prime256v1:secp521r1:secp384r1;
ssl_stapling включен;
ssl_stapling_verify включен;
ssl_trusted_certificate /etc/letsencrypt/live/seoartgallery.com/chain.pem;
преобразователь 8.8.8.8 8.8.4.4 действительный=300 с;
резолвер_тайм-аут 5 с;
ssl_buffer_size 4k;
расположение ~ /wp-content/(?<path>.+)\.(?<ext>jpe?g|png|gif)$ {
add_header Варьировать Принять;
истекает через 365 дней;
try_files /wp-content/uploads-webpc/$path.$ext$suffix /wp-content/$path.$ext$suffix $uri =404;
}
client_body_in_file_only чистый;
client_body_buffer_size 16 КБ;
send_timeout 30 с;
доступ_лог выключен;
error_log /var/log/nginx/seoartgallery.com.error.log;
установить $skip_cache 0;
если ($ request_method = POST) {
установить $skip_cache 1;
установить $skip_reason "POST";
}
если ($query_string != "") {
установить $skip_cache 1;
установить $skip_reason "QUERY_STRING";
}
если ( $cookie_woocommerce_items_in_cart = "1" ){
установить $skip_cache 1;
установить $skip_reason WP_WooCommerce;
}
если ( $cookie_woocommerce_cart_hash = "1" ){
установить $skip_cache 1;
установить $skip_reason WP_WooCommerce;
}
если ($cookie_wp_woocommerce_session_[a-z0-9] = "1" ){
установить $skip_cache 1;
установить $skip_reason WP_WooCommerce;
}
если ($cookie_wp_automatewoo_visitor_[a-z0-9] = "1" ){
установить $skip_cache 1;
установить автоматизацию $skip_reason;
}
если ( $cookie_wp_automatewoo_session_started = "1" ){
установить $skip_cache 1;
установить автоматизацию $skip_reason;
}
# Правила пропуска кеша для WooCommerce
if ($request_uri ~* "/my-account-2.*|/thskan.*|/store.*|/cart.*|/my-account.*|/checkout.*|/addons.*") {
установить $skip_cache 1;
установить $skip_reason WP_WooCommerce;
}
если ( $arg_add-to-cart != "" ) {
установить $skip_cache 1;
установить $skip_reason добавить в корзину;
}
if ($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]|yith_wcwl_products|wordpress_no_cache|wordpress_logged_in |woocommerce_items_in_cart|woocommerce_cart_hash|tinv_wishlistkey") {
установить $skip_cache 1;
установить куки $skip_reason;
}
if ($request_uri ~* "(/my-account-2/|/thskan/|/my-account/|pum-[a-z0-9]|pum_[a-z0-9]|/checkout/|/ cart/|/wp-admin/|/xmlrpc.php|/wp-(app|cron|логин|регистрация|почта).php|wp-.*.php|/feed/|index.php|wp-comments- popup.php|wp-links-opml.php|wp-locations.php|карта сайта(_index)?.xml|[a-z0-9_-]+-sitemap([0-9]+)?.xml)" ) {
установить $skip_cache 1;
установить $skip_reason uri;
}
расположение ~ [^/]\.php(/|$) {
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
если (!-f $document_root$fastcgi_script_name) {
вернуть 404;
}
fastcgi_read_timeout 300;
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
fastcgi_index index.php;
fastcgi_buffers 64 16k; # по умолчанию 8 4k
#ì´ ìëë fastcgi ì¶ê°ë¡ ì ë ¥íê².
fastcgi_buffer_size 32 КБ;
fastcgi_cache_bypass $skip_cache;
fastcgi_no_cache $skip_cache;
fastcgi_cache seoartgallery.com;
fastcgi_cache_valid 200 1440 м;
fastcgi_cache_min_uses 1;
fastcgi_cache_lock включен;
add_header X-FastCGI-Cache $upstream_cache_status;
add_header WP-Bullet-Skip $skip_reason;
fastcgi_cache_valid 404 1 м;
fastcgi_cache_valid 301 302 500 502 504 30 минут;
включить fastcgi_params;
}
# Файл с блочной точкой (.htaccess, .htpasswd, .svn, .git, .env и т. д.)
расположение ~/\. {
отрицать все;
}
# Заблокировать (файл журнала, двоичный файл, сертификат, сценарий оболочки, файл дампа sql) доступ.
location ~* \.(log|binary|pem|enc|crt|conf|cnf|sql|sh|key|yml|lock)$ {
отрицать все;
}
# Блокировать доступ
location ~* (композитор\.json|композитор\.lock|композитор\.phar|участник\.md|лицензия\.txt|readme\.rst|readme\.md|readme\.txt|авторское право|ремесленник|gulpfile\ .js|пакет\.json|phpunit\.xml|журнал_доступа|журнал_ошибок|файл_грунта\.js)$ {
отрицать все;
}
местоположение = /favicon.ico {
log_not_found выключен;
доступ_лог выключен;
}
местоположение / тест5 {
try_files $uri $uri/ /test5/index.php?$args;
расположение ~ \.php$ {
включить фрагменты/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
}
}
местоположение ^~/.well-known/apple-developer-merchantid-domain-association {
позволять все;
}
расположение ~* \.(?:ttf|ttc|otf|eot|woff|woff2|font.css|css|js)$ {
add_header Access-Control-Allow-Origin "*";
истекает макс.;
}
client_max_body_size 100M;
место расположения / {
try_files $uri $uri/ /index.php?$args;
add_header Access-Control-Allow-Origin *;
}
местоположение = /wp-login.php {
limit_req zone=один пакет=5 узлов;
}
# Разрешить программу проверки домена Lets Encrypt
расположение ^~ /.well-known/acme-challenge/ {
позволять все;
}
# Конфигурация Rocket-Nginx
включить Rocket-nginx/conf.d/default.conf;
включить оптимизацию/*.conf;
#include conf.d/Fastcgi.conf;
}