Вы получаете ошибку 500, потому что вы заставляете сервер входить в бесконечный цикл (на что он сердится и выдает ошибку, чтобы остановиться).
Это из-за вашего RewriteRule
, который всегда будет совпадать:
RewriteRule ^(.*)$ versions/0/1/$1
^(.*)$
соответствует значению versions/0/1/
, поэтому после выполнения первоначальной перезаписи набор правил переоценивается и создает цикл, который выглядит следующим образом:
versions/0/1/something
versions/0/1/versions/0/1/something
versions/0/1/versions/0/1/versions/0/1/something
.. и т. Д.
Вы должны подготовить RewriteRule
для предотвращения зацикливания, возможно, следующим образом:
RewriteEngine on
RewriteCond %{REQUEST_URI} !^/versions
RewriteRule ^(.*)$ versions/0/1/$1
Кроме того, ваше утверждение ErrorDocument 500
не имеет особого смысла, поскольку вы никогда не сгенерируете ошибку 500 , потому что у вас не включен mod_rewrite
, поскольку вы окружили соответствующий mod_rewrite
директивы с <IfModule mod_rewrite.c>
.