httpd.conf

Enviada por João Carlos 
João Carlos
httpd.conf
17 de August de 2012 às 06:49PM
Saudações, Este é meu primeiro post aqui, espero que esteja no local correto.
Vi que já tem alguns post referente a este assunto mas acho que meu problema e no httpd.conf;

estou começando a trabalhar com url amigavel usando '.htaccess' e estou encontrando algumas dificuldades:
Procurando pela net encontrei um tutorial que me ajudou um pouco com a seguinte informação:

"Dentro do arquivo httpd.conf descomente as linhas LoadModule módulos rewrite_module / mod_rewrite.so
Também encontrar o ClearModuleList linha é comentada em seguida, encontrar e certifique-se de que o mod_rewrite.c AddModule linha não está comentada."

O problema e que não encontrei a linha ClearModuleList nem mod_rewrite.c AddModule;

Não sei se o problema parte dai.

vou postar como esta meu sistema.
Sistema operacional Windows 7;
Alias criado em c:\projetos\mvc\/
Usando o wampServer 2.2;

meu .htaccess:

primeiro estava assim:
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*)$ index.php?key=$1

apos ler um post neste forum:
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteBase /AME
RewriteRule ^(.*?)$ $1.php [QSA,L]
</IfModule>

meu index.php:
<?php
die(print_r($_SERVER,1));
echo $_GET['key'];
?>

resposta do php:

Array
(
[HTTP_HOST] => 127.0.0.1
[HTTP_CONNECTION] => keep-alive
[HTTP_CACHE_CONTROL] => max-age=0
[HTTP_USER_AGENT] => Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.79 Safari/537.1
[HTTP_ACCEPT] => text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
[HTTP_ACCEPT_ENCODING] => gzip,deflate,sdch
[HTTP_ACCEPT_LANGUAGE] => pt-BR,pt;q=0.8,en-US;q=0.6,en;q=0.4
[HTTP_ACCEPT_CHARSET] => ISO-8859-1,utf-8;q=0.7,*;q=0.3
[HTTP_DNT] => 1
[PATH] => C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;
[SystemRoot] => C:\Windows
[COMSPEC] => C:\Windows\system32\cmd.exe
[PATHEXT] => .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
[WINDIR] => C:\Windows
[SERVER_SIGNATURE] =>
[SERVER_SOFTWARE] => Apache/2.2.21 (Win32) PHP/5.3.8
[SERVER_NAME] => 127.0.0.1
[SERVER_ADDR] => 127.0.0.1
[SERVER_PORT] => 80
[REMOTE_ADDR] => 127.0.0.1
[DOCUMENT_ROOT] => C:/wamp/www/
[SERVER_ADMIN] => admin@localhost
[SCRIPT_FILENAME] => C:/Projetos/MVC/www/index.php
[REMOTE_PORT] => 50561
[GATEWAY_INTERFACE] => CGI/1.1
[SERVER_PROTOCOL] => HTTP/1.1
[REQUEST_METHOD] => GET
[QUERY_STRING] =>
[REQUEST_URI] => /mvc/index.php/ggoo/
[SCRIPT_NAME] => /mvc/index.php
[PATH_INFO] => /ggoo/
[PATH_TRANSLATED] => C:\wamp\www\ggoo\
[PHP_SELF] => /mvc/index.php/ggoo/
[REQUEST_TIME] => 1345227077
)


Fazendo alguns teste consigo que ele omita o index.php mas não consigo que ele encontre a variável.

Espero que posam ajudar, desde já agradeço.
Marcos Regis
Re: httpd.conf
17 de August de 2012 às 07:22PM
Qual a url que está chamando?
Como quer que ele funcione?
João Carlos
Re: httpd.conf
17 de August de 2012 às 07:42PM
Opa Marcos obrigado pelo interesse,
A url localhost/mvc/

Se chamo essa url e coloco em echo "Olá" em index.php ele imprime coretamente, e a url não mostra a url completa somente 'localhost/mvc/' mesmo mostrando a pagina index.php.

Mas preciso que a variável capture tudo que esteja após index.php
exemplo: url: "localhost/mvc/action/function";
a url fica localhost/mvc/
a variavel imprime action/function.

Grato
Marcos Regis
Re: httpd.conf
17 de August de 2012 às 09:15PM
Tente usar


<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine on
RewriteBase /mvc
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*?)$ index.php [QSA,L]
</IfModule>
João Carlos
Re: httpd.conf
17 de August de 2012 às 09:49PM
Grande Marcos.
Funcionou assim:

<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine on
RewriteBase /mvc
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*)$ index.php?key=$1
</IfModule>

troquei só a ultima linha.
Isso pode me causar algum problema futuro.
Vou dar uma estudada no [QSA ,L] para entender sua função, mas de qualquer maneira ja entendi o funcionamento. Muito Obrigado pela ajuda foi fundamental.
Você precisa estar logado no PHPBrasil.com para poder enviar mensagens para os nossos fóruns.

Faça o login aqui.