Переписать каталоги, используя mod_rewrite, но сохраняя строки запроса - PullRequest
0 голосов
/ 09 августа 2011

Я хочу переписать URL-адреса Word Press, используя mod_rewrite в моем файле .htaccess, следующими способами:

http://blog.com/content/themes/twentyeleven/style.css

до

http://blog.com/wp-content/themes/twentyeleven/style.css

и

http://blog.com/inc/css/admin-bar.css?ver=20110622

до

http://blog.com/wp-includes/css/admin-bar.css?ver=20110622

и

http://blog.com/admin/post.php?post=1&action=edit

до

http://blog.com/wp-admin/post.php?post=1&action=edit

Я пытаюсь скрыть тот факт, что этот сайт использует Word Press, и все ссылки были переписаны на лету с использованием PHP. Однако я хочу, чтобы сервер переписал ссылки на правильные ссылки Word Press, как указано выше.

На случай, если это поможет, я добавил файл (в моем файле php.ini) к файлу Wordpress index.php, который вызывает ob_start (); и добавьте следующий файл:

<?php
$html = ob_get_contents();
ob_end_clean();
$html = str_replace("wp-content", "content", $html);
$html = str_replace("wp-admin", "admin", $html);
$html = str_replace("wp-includes", "inc", $html);
echo $html; 
?>

Некоторые люди могут спросить, почему я хочу скрыть тот факт, что мы используем Word Press. Есть много причин (безопасность является одной из них), но на самом деле вопрос не в этом.

Какой код я могу добавить к своему файлу .htaccess, который позволил бы мне переписать URL-адреса, но сохранил правильные строки запроса, такие как? Ver = 20110622 или? Post = 1 & action = edit

1 Ответ

3 голосов
/ 09 августа 2011

Флаг [QSA] будет поддерживать строку запроса при перезаписи URL.Пример:

RewriteRule ^content/(.*?) wp-content/$1 [QSA]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...