Como portar as regras de reescrita do Apache para cherokee?

7

Sou muito novo no cherokee, é ótimo e bastante direto, exceto os Rewrites de URL. Existe um guia direto para isso? Me avise.

Além disso, como eu transportaria isso:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

Obrigado

    
por saint 02.03.2010 / 09:50

2 respostas

8

Assumindo que você está usando o servidor padrão e você já configurou o manipulador PHP FastCGI:

  1. Ir para servidores virtuais.
  2. Selecione seu servidor.
  3. Clique na guia "Comportamento"
  4. Edite a regra "Padrão".
  5. Altere seu "Manipulador" para "Redirecionamento"
  6. A interface mudaria. Agora preencha os campos:
    • Tipo: Interno = lado do servidor, Externo = lado do cliente
    • Expressão regular: ^ (. *) $
    • Substituição: /index.php?q=$1
  7. Todas as suas outras reescritas de URL devem ser adicionadas lá.

Isso deve funcionar para sua regra.

Notas: As ordens de regras de comportamento são importantes, portanto, coloque seu manipulador de PHP no topo e configure-o como não final. Para conteúdo estático, como CSS ou imagens, você deve criar novas regras (tipo: diretório, manipulador: conteúdo estático).

Espero que isso ajude você. Tchau!

p.d: Se você precisar deles, posso fazer algumas telas.

    
por 12.04.2010 / 19:10
1

Você só precisa empilhar vários manipuladores para o host virtual.

Primeiro, você precisa do Conteúdo estático ou do Lista e amp; Envie o manipulador para imitar as instruções RewriteCond seguidas por um manipulador de Redirecionamento para imitar o real RewriteRule declaração.

Pode haver problemas com o sinalizador QSA , embora ...

    
por 08.03.2010 / 13:23