Назад | Перейти на главную страницу

Как выводить эхо из .htaccess?

Мы пишем много кода для htaccess, но какой метод отладки лучше всего, кроме обновления страницы?

Есть ли способ записать это в файл? или есть функция эхо / печати?

Просто как мне узнать, сколько у меня $ 1 $ 2 $ 3?

Попробуйте эти:

RewriteLog "/myfolder/mylogfile.log" 
RewriteLogLevel 3

Это просто регулярные выражения с некоторыми дополнениями, поэтому вы можете использовать Regex тренер для первоначального тестирования URL-адресов или любых других инструментов отладки Regex.

Ура! :)

Вы можете попробовать метод, упомянутый в сообщении блога под названием Пара способов отладки mod_rewrite:


По сути, вы просто сбрасываете часть информации, которую использует mod_rewrite, обратно в заголовки, а затем используйте расширения Firebug или LiveHTTP Headers в Firefox для просмотра заголовков и чтения вашей отладочной информации.

В .htaccess используйте условие и правило:

RewriteCond %{QUERY_STRING} !vardump
RewriteRule (.*) http://www.example.com/$1?vardump&thereq=%{THE_REQUEST}&reqhost=%{HTTP_HOST} [R=301,L,QSA]

Вот небольшой интересный прием, позволяющий «вывести» переменные из файла .htaccess.

Если для параметра AllowOverride установлено значение FileInfo, вы можете установить и запустить настраиваемый ответ об ошибке в вашем файле .htaccess с желаемыми переменными на выходе:

ErrorDocument 404 "Request: %{THE_REQUEST} Referrer: %{HTTP_REFERER} Host: %{HTTP_HOST}"
RewriteRule ^ - [L,R=404]

В зависимости от того, насколько вы креативны с выражения вы можете вывести много полезной информации!

Вы не ограничены использованием статуса 404 для вашего «отраженного» контента. Вы даже можете переопределить статус 200 «ErrorDocument», который в сочетании с <If> Директивы могут помочь в некоторых других довольно интересных применениях этого хака для возврата содержимого непосредственно из файла .htaccess.