Apache перенаправляет перезапись непоследовательно - PullRequest
0 голосов
/ 25 мая 2018

У меня есть несколько правил перезаписи, настроенных для домена, чтобы обслуживать определенные статьи путем добавления 301 к новому домену, и два универсальных правила для правил, которые не соответствуют

RewriteEngine on
# Rewrites for specific testdomain1.com pages to a new server
RewriteRule "^/2018/04/01/Article-1/$" "http://testdomain2.com/Article-1" [R=301,L]
RewriteRule "^/2018/04/02/Article-2/$" "http://testdomain2.com/Article-2" [R=301,L]
# Catch-all for images (pass them through)
RewriteCond %{REQUEST_URI} !\.(gif|jpe?g|png)$ [NC]
# Redirect for all other matches
RewriteRule ^(.*)$ http://testdomain2.com/ [R=301,L]

Проблема, с которой я столкнулсясталкивается с тем, что, хотя Article-1 соответствует отлично и обслуживает 301, запросы к Article 2, похоже, перехватываются последним правилом в перенаправлении.Я не совсем уверен, почему это происходит, но любой совет будет полезен, прежде чем я добавлю оставшиеся 6400 записей в файл перенаправления.

Чтобы помочь с отладкой, вот разметка для вызова curl длятестовый путь к статье 2:

curl -0 http://www.testdomain1.com/2018/04/02/Article-2/ -o example.html

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>301 Moved Permanently</title>
</head><body>
<h1>Moved Permanently</h1>
<p>The document has moved <a href="http://www.testdomain2.com/$%224">here</a>.</p>
<hr>
<address>Apache/2.4.18 (Ubuntu) Server at www.testdomain1.com Port 80</address>
</body></html>
...