Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

pinoc

Servidor embutido php

Recommended Posts

Boa tarde.

 

To precisando de uma ajudinha na verdade tirar uma duvida.

Alguém saberia me dizer se no servidor embutido do php url amigável não funciona?

 

Pois estou montando um sistema e não consegui fazer de jeito nem um funcionar aqui, porem não fiz teste em outro servidor ainda.

 

Obrigado desde já.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Em seu servidor local e preciso habilitar o RewriteEngine.

 

Este post solucionou a sua dúvida, peço que coloque como resolvido e me der um ponto positivo de reputação para que eu possa continuar ajudando outros colegas como você.

Caso não solucione o seu problema, peço que coloque a sua dúvida abaixo.

 


Att: João Paulo Sousa Supriano

Compartilhar este post


Link para o post
Compartilhar em outros sites

#1, #2, #3

 

O arquivo .htaccess é um recurso do módulo do Apache "mod_rewrite".

 

#3

RewriteEngine é uma diretiva do mod_rewrite...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Entendo então resumindo usando o server embutido do php não tenho como trabalhar com url amigável?

 

 

Caio

 

meu .htaccess esta assim.

 

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?p=$1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esse server não suporta .htaccess, use uma distribuição com apache que é mais tradicional ( wamp por exemplo )

 

Mas você pode usar Url amigavél neste server sim, tem que usar a abordagem de unico ponto de entrada.

 

roda isso:

 

php -S localhost:8080 index.php

 

isso faz todas as requisições serem direcionadas para a index. Como o .htaccess faria.

 

No PHP você testa se é imagem por exemplo

<?php
// router.php
if (preg_match('/\.(?:png|jpg|jpeg|gif)$/', $_SERVER["REQUEST_URI"])) {
    return false;    // serve the requested resource as-is.
} else { 
    echo "<p>Welcome to PHP</p>";
}

Assim ele exibe as imagens sem problemas. Leia o doc offcilal: http://us1.php.net/manual/pt_BR/features.commandline.webserver.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa.

 

Seguinte resolvi voltar pro vagrant pois dai tenho um servidor de desenvolvimento igual a de produção.

Porem configurei tudo certinho bunitinho rodando tudo lindo a a p@!!@a das url amigável, não funciona.

 

ja dei um sudo apache2ctl -M e o rewrite_module (shared) esta la rodando mexi no default do sites-available e coloquei o AllowOverride de none para all.

 

Ai o mais estanho testei testei assim o .htaccess

 

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^categoria$ categoria.html

e o exemplo assim funciono certinho porem quando eu coloco pro meu sistema php, da segunte forma abaixo ele não funciona mais.

 

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ index.php?p=$1

Preciso fazer alguma configuração no php que desconheço?

Esta certo meu .htaccess?

 

Obrigado desde já.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema é que você está usando .htacces para fazer roteamento e você depende dele para isso. Você pode fazer o roteamento usando PHP e dependendo do .htacces só para tirar o /index.php. O .htaccess é específico do Apache.

 

.htaccess:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ index.php [NC,L]

index.php:

<?php

$url = $_SERVER['REQUEST_URI'];

echo $url;

Nesse aquivo, a variável $url contém a URL requisitada, que é usada para fazer o roteamento. Você pode usar alguma biblioteca para isso se quiser.

 

server.php

<?php

if (file_exists($_SERVER['REQUEST_URI'])) {
    return false;
} else {
    require __DIR__ . '/index.php';

Rodando o servidor:

php -S localhost:3000 index.php

:graduated:

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.