como usar o mod_rewrite no apache para um aplicativo de descanso

1

Não tenho muita experiência com o apache, mas consegui executar com a seguinte configuração por meses na minha caixa de teste:

me@mydev:/etc/apache2/sites-enabled$ vim 000-default.conf 
<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Então, basicamente, sempre que eu criar uma nova pasta em / var / www / html, ela ficará disponível no meu navegador. Mas agora eu quero tentar fazer o seguinte:

Eu criei um novo aplicativo, com a seguinte estrutura:

/var/www/html/testrestapp/src/public/index.php

Funciona, mas tenho que navegar para:

http://localhost/testrestapp/src/public/index.php/hello/sometestname

e, em seguida, o aplicativo retorna "sometestname"

Mas eu gostaria de saber como configurar o apache para que eu possa navegar assim:

http://localhost/testrestapp/hello/sometestname

e obtenha os mesmos resultados.

Foi assim que modifiquei meu arquivo 000-default.conf (que é o único arquivo na pasta habilitada para sites, btw):

<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

        <Directory "/var/www/html/testrestapp/">
            RewriteEngine  on
            RewriteBase    /testrestapp/
            RewriteRule    ^src/public/index.php/hello$  hello/  [R]
        </Directory>

</VirtualHost>

Mas não está funcionando para mim. Ainda recebendo um 404. Qualquer sugestão seria apreciada. A versão do Apache é o Apache 2.4.12 no ubuntu

Obrigado.

    
por Happydevdays 19.04.2016 / 21:37

1 resposta

0

Veja as diretivas Alias e Diretório ( link , link )

    
por 19.04.2016 / 22:46