Ir para o conteúdo
sEnte

Podem-me explicar porque é que isto acontece?

Mensagens Recomendadas

sEnte

Então é assim

Esta é a minha directoria de ficheiros

V5keVHF.png

No ficheiro que está agora selecionado tenho isto

<?php
 $url = $_GET['url'];
 echo $url;
?>

Se na barra de endereço escrever http://127.0.1.1/mvc/blarg (se escrever index ou outra coisa qualquer mostra-se o que está escrito depois de mvc/)

aparece-me na página "blarg" já que é o que estou a mandar fazer output

Depois crio outro ficheiro em controllers/index.php e meto isto

<?php
class Index {

 function __construct(){
  echo 'We are in index';
 }
}
?>

tenho que adicionar no ficheiro index.php (o que está selecionado na imagem.)

<?php
 $url = $_GET['url'];
 echo $url;
 require 'controllers/' . $url . '.php';
 $controller = new $url;
?>

se na barra de endereço escrever isto http://127.0.1.1/mvc/index

deveria aparecer escrito "indexWe are in Index"

mas o que tenho como output é só isto

Not Found

The requested URL /mvc/index was not found on this server.

Se criar em controllers o ficheiro help.php e meter lá isto

<?php
class Help{

 function __construct(){
  echo 'We are inside help';
 }
}

?>

se for a http://127.0.1.1/mvc/help já funciona como deve ser ou seja aparece "helpWe are inside help".

Ainda pensei que tivesse a mandar para o sitio errado o index mas não.

Editado por sEnte

"If It Ain't Broke, Break it and build something Cooler!" Unknown

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
sEnte

o .htaccess é o seguinte

RewriteEngine On

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

RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]

Editado por sEnte

"If It Ain't Broke, Break it and build something Cooler!" Unknown

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
sEnte

juntando Options Indexes FollowSymLinks parece ter resolvido o problema.

o meu .htaccess agora está assim

RewriteEngine On

Options Indexes FollowSymLinks

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

RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]

Obrigado.

Editado por sEnte

"If It Ain't Broke, Break it and build something Cooler!" Unknown

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
sEnte

fiquei na mesma lol

percebo muito pouco de .htaccess, porque raramente o uso

podes explicar melhor?


"If It Ain't Broke, Break it and build something Cooler!" Unknown

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
HappyHippyHippo

as configurações do site estarão no ficheiro : /etc/apache2/sites-available/default

o que fizeste não foi mais do que sobrepor as definições que ai estão no parâmetro options


IRC : sim, é algo que ainda existe >> #p@p

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
sEnte

O mais imsples será ir à raiz certo?

<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

O que convem remover daqui?

Editado por sEnte

"If It Ain't Broke, Break it and build something Cooler!" Unknown

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
sEnte

Ainda me estou a introduzir a este sistema :)

tenho uma pasta controladores onde crio as classes e faço extends Controller

depois noutra pasta tenho as libraries onde crio os controladores, depois noutra pasta views que é onde tenho o front-end


"If It Ain't Broke, Break it and build something Cooler!" Unknown

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
sEnte

@yoda

Estou aberto a sugestões dos conhecedores disto :P eu ainda estou em fase de aprendizagem.

@HappyHippyHippo

o que meti num post anterior é o conteudo do ficheiro default em /etc/apache2/sites-available/

o que é que devo mudar então?


"If It Ain't Broke, Break it and build something Cooler!" Unknown

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.