Создайте два разных правила для .htaccess: перенаправьте некоторые URL на мой старый сайт и создайте 301 редирект для новостей с моего старого на новый сайт - PullRequest
0 голосов
/ 14 октября 2019

Я пытаюсь понять, как перенаправить некоторые URL-адреса, которые на моем новом сайте еще не активны, но перенаправить несколько других на новую импортированную страницу на моем новом веб-сайте. Пример

У меня есть и веб-сайт joomla i 'Я хотел бы перенаправить www.mywebsite.it/it на old.mywebsite.it/it

Но есть также некоторые редкие перенаправления 301 для новостей и некоторые страницы it/notizie/2036-slugnews.html на notizie/year/notizia/slugnews

Я работаю над Apache2, сmysql 5.7, php 7.2 и октябрьские Cms. С включенным mod_rewrite и laravel

Прочитайте несколько примеров: https://www.danielmorell.com/guides/htaccess-seo/redirects/introduction-to-redirects

Представьте, что мне нужно попытаться написать условие, которое получает все URL-адреса после /it/*, но вставить исключение, чтобы записать все, кромете, с перенаправлениями 301

Честно говоря, не могу понять, как перенаправить запись условия.

У вас есть предложения?

Ответы [ 2 ]

0 голосов
/ 16 октября 2019

после серии испытаний я нашел промежуточное решение:

RedirectMatch 301 ^/it(.*)$ https://www.mysite.it$1
RewriteRule ^it/genericpage.html https://www.mywebiste.it/genericapagetoredirect? [R=301,L]
RewriteRule ^it/notizie/2002-slug.html https://www.mywebiste.it/notizie/2019/notizia/slugtoberedirected? [R=301,L]

Таким образом я перенаправляю свою старую https://www.mysite.it/it домашнюю страницу на https://www.mysite.it и некоторые URL сПереадресация один на один

Но это не моя цель.

Рассуждая по предмету, я нашел окончательное решение

Моя цель состоит в том, чтобы перенаправить 1) группу URL сURL перезаписи 301 2) Все ссылки, которые не включены в список URL перезаписи в общем случае на https://www.mysite.it 3) Все плохие ссылки на сайте Joomla создаются с www.mysite.it/it/tags/* и www. mysite.it/it/components/* to www.mysite.it

В целом цель откровенно состоит в том, чтобы поддерживать связанные URL-адреса с высоким авторитетом в поисковой консоли Google.

Осознавая это, япытался

    RewriteRule ^it/genericpage\.html$ https://www.mywebiste.it/genericapage? [R=301,L]
    RewriteCond %{HTTPS_HOST} ^www\.mysite\.it$
    RewriteRule ^it/$ https://www.mysite.it/? [R=301,L]

и

    RewriteRule ^it/genericpage\.html$ https://www.mywebiste.it/genericapage?[R=301,L]
    RewriteCond %{HTTPS_HOST} ^www\.mysite\.it$
    RewriteRule ^it(/.*) $1 [R=301,L]

но безуспешно.

Что вы думаете?

0 голосов
/ 14 октября 2019

Вы должны поместить свои специальные URL-перенаправления перед общим правилом в вашем файле .htaccess: Например:

RewriteEngine on
RewriteRule ^it/notizie/2036\-slugnews\.html$ http://old.mywebsite.it/notizie/year/notizia/slugnews? [R=301,L]
RewriteCond %{HTTP_HOST} ^www\.mywebsite\.it$
RewriteRule ^(.*)$ http://old.mywebsite.it/$1 [R=301,L]

Если вы новичок в перенаправлениях, я могу предложить использовать https://www.301 -reirect.online / 301 генератор перенаправления для вашей специальной страницы на правила страницы. Этот генератор - лучший, который я знаю на данный момент.

Кроме того, измените http: // на https: //, если ваш сайт использует безопасное соединение.

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