2010-10-29 4 views
0

В корне моего сайта ... www.domain.com. хотите добавить некоторые статические страницы, которые URL-адрес страницы может быть задан пользователем. Итак, если пользователи заданы в качестве профиля url, тогда полный URL-адрес страницы должен быть www.domain.com/profile .. До сих пор простое правило перезаписи выполняло бы эту работу. trasnlate это что-то вроде /staticpage.php?tag=profileПроблема с переписыванием мод

Проблема, что я хочу несколько страниц, как www.domain.com/shop в корне которой ARENT статические ... Так что я могу сделать, если все запросы на главный каталог перейдут в /staticpage.php?tag=$1?

+0

Статические записи для определенных страниц, а затем все остальное для остальных. – drudge

ответ

1

Я рекомендую использовать mod rewrite для отправки всего файла index.php и использования переднего контроллера для этого. Это делает его намного проще.

<IfModule mod_rewrite.c> 
    RewriteEngine On 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule . index.php [L] 
</IfModule> 
+1

Осмотреть '$ _SERVER ['REQUEST_URI']', чтобы определить, как перенаправить запрос на правильный контроллер или файл PHP. – meagar

0

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

RewriteEngine on 
RewriteRule  ^static.*$ -  [L] 
RewriteRule  ^assets.*$ -  [L] 
RewriteCond  %{REQUEST_FILENAME} !-s 
RewriteRule  .*  /router.php 

где «статические» выгружаются файлы, и «активы» являются производственными графиками/таблицами стилей/js и т. д.

Смежные вопросы