Попробуйте удалить косую черту в начале матча и замените шаблоны следующим образом:
RewriteRule fb/like/([0-9]+) fb/like.php?id=$1
mypage.com/
- это доменное имя, поэтому строка, которая соответствует, fb/like/5
Также рассмотрите возможность использования карата в начале строки соответствия, чтобы она соответствовала fb
, но не fffb
:
RewriteRule ^fb/like/([0-9]+) fb/like.php?id=$1
Вот краткий справочник для mod_rewrite, который я нашел полезным.
Отредактируйте свой следующий вопрос:
Для соответствия mypage.com/something/fb/like/5, вы можете сделать это:
RewriteRule ^([^/]+)/fb/like/([0-9]+) $1/fb/like.php?id=$2
Это сохранит первый каталог как $ 1.[^/]+
означает совпадение с одним или несколькими символами, которые не являются косой чертой.Поместите этот файл .htaccess в корневую директорию вашего домена.
В качестве альтернативы вы можете использовать второе-последнее правило и поместить этот файл .htaccess в подкаталог «thing ".Надеюсь, что это имеет смысл.
Или вы можете написать правило для простого соответствия like.php/([0-9]+)
, чтобы оно работало независимо от того, как выглядит путь к каталогу.Вы можете пойти еще более универсально и применить это к любому файлу PHP, а не только к like.php
.Это действительно зависит от того, как вы хотите, чтобы ваш сайт работал.