я должен использовать `RewriteRule` вместо` RedirectMatch` и почему? - PullRequest
0 голосов
/ 02 мая 2020

Я пытаюсь выполнить полное перенаправление со старого домена на новый с другой структурой URL следующим образом:

https://olddomain/year/month/day/post_title следует перенаправить на https://olddomain/post_title

Я настроил файл haccess следующим образом:

Options +FollowSymLinks
RewriteEngine On

Header set content-Security-Policy: upgrade-insecure-requests

RewriteCond %{HTTP_HOST} ^olddomain$
RewriteCond %{REQUEST_URI} !^/\.well-known/acme-challenge/[0-9a-zA-Z_-]+$
RewriteCond %{REQUEST_URI} !^/\.well-known/cpanel-dcv/[0-9a-zA-Z_-]+$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/(?:\ Ballot169)?
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$

RedirectMatch 301 ^/([0-9]{4})/([0-9]{2})/([0-9]{2})/(?!page/)(.+)$ https://newdomain/$4
RedirectMatch 301 ^(.*)$ https://newdomain/$1

Вышеуказанная настройка работает правильно, и все URL-адреса перенаправляются со старого на новый домен с моей пользовательской постоянной ссылкой!

Но Я читал, что вы должны использовать RewriteRule вместо RedirectMatch !! Это правильно?

Если ДА , скажите, пожалуйста

  • Есть ли проблема с индексом Google, чтобы сохранить RedirectMatch?
  • Какая разница между RewriteRule VS RedirectMatch?,
  • Почему я должен использовать RewriteRule вместо RedirectMatch!
  • Как я могу преобразовать вышеприведенное RedirectMatch RewriteRule?

Спасибо за вашу помощь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...