htaccess переписать удалить родительский каталог и расширение php - PullRequest
0 голосов
/ 07 апреля 2011

Мне нужна рука, переписывающая некоторые URL. Что мне нужно, это удалить имя папки из URL-адреса, а также удалить расширение файла PHP. Пример:

мне нужно mysite.com/foldername/about.php становиться mysite.com/about/

Я должен сказать, что у меня есть несколько статических файлов php, к которым необходимо получить доступ mysite.com/filename/ вместо mysite.com/foldername/filename.php

Заранее спасибо за ваше время.

С уважением.

1 Ответ

0 голосов
/ 07 апреля 2011
RewriteEngine On
RewriteRule ^/[.*]/?$ foldername/$1.php#{QUERY_STRING} [NC,L]

Если вы не используете QUERY_STRING (т.е. у вас нет параметров $ _GET), вы можете удалить # {QUERY_STRING}

Обратите внимание, это переписывает все в вашем корне на foldername / NAME.php

Если вы хотите исключить определенные пути (например, css, js файлы и другие), я рекомендую вам сделать:

RewriteCond RewriteCond %{REQUEST_URI} !^*.css$
RewriteCond RewriteCond %{REQUEST_URI} !^*.js$
RewriteCond RewriteCond %{REQUEST_URI} !^*.php$
RewriteCond RewriteCond %{REQUEST_URI} !^*DONTREDIRECT*$
RewriteRule ^/[.*]/?$ foldername/$1.php#{QUERY_STRING} [NC,L]
...