modrewrite в подпапке - PullRequest
       0

modrewrite в подпапке

1 голос
/ 26 марта 2012

Просто хотел узнать, возможно ли использовать mod_rewrite в одной (или нескольких) подпапках. У меня есть служба в папке, которую я хотел бы вызвать как синтаксис службы отдыха.

$url = 'http://mysite/subfolder/parem1/parem2/parem3/';
$_SERVER['REQUEST_URI']

$tokens = explode('/', $url);
echo $tokens[sizeof($tokens)-2];

поэтому вопрос в том, смогу ли я перехватить все различные сегменты в index.php в подпапке, используя modrewrite для примера (поместив .htaccess с правилами только в этой папке?) Или как это сделать?

привет

Ответы [ 2 ]

2 голосов
/ 26 марта 2012

Если вы хотите определить правила перезаписи для подпапки, взгляните на RewriteBase

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /yoursubfolder
    RewriteRule ^(.*)$ index.php?$param=$1
</IfModule>
1 голос
/ 26 марта 2012

Это возможно.В вашем .htaccess вы можете поместить что-то вроде этого:

<IfModule mod_rewrite.c>
  Options +FollowSymlinks
  RewriteEngine On

    RewriteRule ^([^/\.]+)/?$                               index.php?p1=$1
    RewriteRule ^([^/\.]+)/([^/\.]+)/?$                     index.php?p1=$1&p2=$2
    RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)/?$           index.php?p1=$1&p2=$2&p3=$3
    RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)/([^/\.]+)/?$ index.php?p1=$1&p2=$2&p3=$3&p4=$4

</IfModule>

В вашем случае вы можете просто поместить файл .htaccess с index.php в папку, где расположен ваш сервис.1005 * Таким образом, вы можете получить (и очистить) массив $_GET вместо того, чтобы извлекать весь URL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...