Это правило отлично работает:
RewriteCond %{HTTP_HOST} ^(.*)\.[a-z0-9\-]{3,}\..*
RewriteRule ^t/(.*)$ /p.php?p=$1 [L]
Это почти идентичное правило бросает 404:
RewriteCond %{HTTP_HOST} ^(.*)\.[a-z0-9\-]{3,}\..*
RewriteRule ^p/(.*)$ /p.php?p=$1 [L]
Может ли быть какое-то правило apache или DNS, которое нарушает это? У меня такой же файл .htaccess на старом сервере, и он отлично работает. Новый сервер - CentOS7 с PHP7.