karva Posted October 17, 2006 at 09:33 AM Report #58009 Posted October 17, 2006 at 09:33 AM Boas pessoal. Tenho aqui uma duvida. E assim, se eu quero que um ficheiro seja apenas acessível pelo php, ponho-o numa pasta apenas acessível pelo servidor, e depois faco o include, e pronto. O que eu quero saber e se existe alguma maneira de fazer isso, mas com o ficheiro q vai ser incluido, numa pasta acessível, mas que o ficheiro só corra se se fizer include, haverá alguma funcao pra isso? Espero que me tenha feito entender. Cumps Proud LEIC-A@IST student!
kingless Posted October 17, 2006 at 10:45 AM Report #58021 Posted October 17, 2006 at 10:45 AM Não percebei muito bem mas acho que podes utilizar a função get_included_files(); para o que queres fazer.
flabron Posted October 17, 2006 at 04:46 PM Report #58074 Posted October 17, 2006 at 04:46 PM O que pretendes, é que se eu aceder directamente ao ficheiro .php pela barra de endereço não conseguir abri-lo? Conseguindo apenas se estiver a ser chamado pelo include? Certamente haverá mais que uma solução. A minha opinião, sessões.
kingless Posted October 17, 2006 at 05:22 PM Report #58081 Posted October 17, 2006 at 05:22 PM @karva Também Podes utilizar a função define(); e defined(); EDIT: @karva tenta explicar melhor... Quase ninguem percebeu...
Ped@ntilva Posted October 17, 2006 at 05:34 PM Report #58083 Posted October 17, 2006 at 05:34 PM Deixa ver se eu percebi. Tens uma pasta que queres que seja possivel aceder mas n queres que acedam aos ficheiros .php que estão contidos nela. É isso? Acho que não é possivel. Já estive a tentar e mesmo mexendo nas Permissões do ficheiro PHP é possivel ler directamente atraves do link. Acho que a melhor solução é como diz o flabron. Pões uma condição no inicio do ficheiro .php a verificar a session e so atraves de outro php é possivel aceder a esse.
karva Posted October 17, 2006 at 06:15 PM Author Report #58102 Posted October 17, 2006 at 06:15 PM exactamente como o Ped@ntilva disse Proud LEIC-A@IST student!
kingless Posted October 17, 2006 at 08:00 PM Report #58154 Posted October 17, 2006 at 08:00 PM Então é só utilizar define(); e defined(); 😉 Fazes o seguinte: Nos ficheiros que queres que sejam acessiveis apenas por include colocas no principo de cada ficheiro o seguinte exemplo: abc.php <?php defined('incluido') OR die( 'Não é possivel aceder a este ficheiro' ); .... //o resto do código do ficheiro aqui ?> E no ficheiro onde estao os includes colocas isto no principio (antes dos includes) exemplo: include.php <?php define('incluido',1); include( 'abc.php' ); ... ?>
karva Posted October 17, 2006 at 08:03 PM Author Report #58156 Posted October 17, 2006 at 08:03 PM problema resolvido tnks kingless Proud LEIC-A@IST student!
Ped@ntilva Posted October 17, 2006 at 10:12 PM Report #58214 Posted October 17, 2006 at 10:12 PM Então é só utilizar define(); e defined(); 😛 Fazes o seguinte: Nos ficheiros que queres que sejam acessiveis apenas por include colocas no principo de cada ficheiro o seguinte exemplo: abc.php <?php defined('incluido') OR die( 'Não é possivel aceder a este ficheiro' ); .... //o resto do código do ficheiro aqui ?> E no ficheiro onde estao os includes colocas isto no principio (antes dos includes) exemplo: include.php <?php define('incluido',1); include( 'abc.php' ); ... ?> Não conhecia esta forma, mais uma coisinha para o meu vocabulário, thks kingless.
-IceBurn- Posted October 23, 2006 at 10:06 AM Report #59592 Posted October 23, 2006 at 10:06 AM O kingless já postou um bom exemplo, mas como nestas coisas mais nunca é demais, outra opção seria utilizando o ficheiro .htaccess ou seja, dentro da pasta onde tens os ficheiros metes um .htaccess com o seguinte: <Files "*.php"> order deny,allow deny from all </Files> Assim já ninguem tem acesso aos ficheiros php contidos nessa pasta, mas quando fizeres o include eles são incluidos.
karva Posted October 23, 2006 at 06:43 PM Author Report #59649 Posted October 23, 2006 at 06:43 PM ya, mas vou usar a funcao do kingless, la em cima disse que nao queria usar .htaccess Proud LEIC-A@IST student!
-IceBurn- Posted October 23, 2006 at 11:38 PM Report #59741 Posted October 23, 2006 at 11:38 PM ya, mas vou usar a funcao do kingless, la em cima disse que nao queria usar .htaccess Pois foi.. não tinha reparado. 🙂
Kajo Posted November 4, 2006 at 02:49 AM Report #62002 Posted November 4, 2006 at 02:49 AM Imaginemos então que não quero que me acedam a pasta imagens mas no entanto quero que o site me apresente as mesmas, como faço? É que desta maneira ele bloqueou-me as imagens, pretendia isto mais para evitar os cuscos que andam a ver as directorias do site. Thanks
-IceBurn- Posted November 4, 2006 at 03:00 AM Report #62005 Posted November 4, 2006 at 03:00 AM Mais uma vez iria sugerir-te o htaccess: Options -Indexes Ou então metes um index.php nessas pastas e... <?php Header("Location: http://teste.com"); ?>
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now