Почему не работает переадресация в Apache?
Хочу сделать простую переадресацию со старого URL на новый домен, определенную страницу
Redirect 301 /catalog/tovar123 https://newsite.ru/catalog.html |
Redirect 301 /catalog/tovar123 https://newsite.ru/catalog.html
Почему-то срабатывает если написать oldsite.ru/catalog/tovar123/
Именно с завершающим слешем, а мне нужно чтобы без слеша срабатывал редирект, что не так делаю?
Дополнительно:
RewriteEngine on RewriteRule ^catalog/tovar123$ https://newsite.ru/catalog.html [R=301,L] |
RewriteEngine on RewriteRule ^catalog/tovar123$ https://newsite.ru/catalog.html [R=301,L]
- Спасибо, еще проблема была в том что провайдер кэшировал DNS и все изменения не работали...
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Проблема с переадресацией в Apache может возникать по разным причинам, и для ее решения необходимо провести некоторые действия.
1. Проверьте настройки файла .htaccess: Убедитесь, что правильно настроены правила переадресации в файле .htaccess. Например, если вы хотите сделать постоянное перенаправление с одной страницы на другую, используйте следующий код:
RewriteEngine on RewriteRule ^old-page$ /new-page [L,R=301]
2. Проверьте модуль mod_rewrite: Убедитесь, что модуль mod_rewrite включен в настройках Apache. Для этого откройте файл httpd.conf и найдите строку LoadModule rewrite_module modules/mod_rewrite.so. Если эта строка закомментирована (начинается с символа #), раскомментируйте ее.
3. Проверьте виртуальный хост: Если вы используете виртуальные хосты, убедитесь, что в конфигурационном файле виртуального хоста прописаны правильные настройки переадресации. Например:
ServerName example.com Redirect permanent / http://www.example.com/ServerName example.com Redirect permanent / http://www.example.com/
4. Перезагрузите Apache: После внесения изменений в конфигурационные файлы Apache, не забудьте перезагрузить сервер, чтобы изменения вступили в силу. Для этого выполните команду в терминале:
sudo service apache2 restartsudo service apache2 restart
5. Проверьте ошибки: Если переадресация по-прежнему не работает, проверьте логи ошибок Apache (обычно располагаются в /var/log/apache2/error.log) на наличие сообщений об ошибках в настройках переадресации.
Следуя этим шагам, вы сможете решить проблему с переадресацией в Apache и настроить ее правильно для вашего веб-сайта.