Ir para conteúdo

Arquivado

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

Diogo Libana

IIS 8 + PHP - Permissões / manipular arquivos em pastas compartilhadas

Recommended Posts

Olá, boa tarde.

 

Desenvolvi um script para impressão em rede, utilizando uma impressora Zebra e enviando a solicitação diretamente via "SHELL_EXEC(), EXEC() ou SYSTEM()" e funciona muito bem em ambiente windows utilizando APACHE, porém, quando tento utilizar o mesmo script em um Servidor IIS, nem mesmo mensagens de erro são retornadas, não importa qual destes comandos eu uso.

 

Segue o script (simplificado):

	$nome_arquivo = $_SESSION['path']."/temporarios/print/0001.txt";
	$impressora = "\\\SERVIDOR\zebra";
	$nome_arquivo = str_replace("/", "\\", $nome_arquivo);	

	$comando = "COPY $nome_arquivo $impressora";
        echo system('NET USE LPT3: /DELETE' ) . "<br/><br/>";
	echo system('NET USE LPT3: ' . $impressora) . "<br/><br/>";
	echo system($comando);

Este tópico não tem o objetivo de entrar em detalhes sobre qual comando é mais adequado (System, Shell_exec ou Exec) e sim, saber como ativar as permissões para que eu possa usar recursos e manipular arquivos em rede local utilizando o IIS.

 

Não tenho muita flexibilidade para solicitar alterações no servidor "IIS" então, gostaria de saber se é possível realizar este tipo de comando sem alterar o servidor.

 

Lembrando que um comando simples como

echo exec('dir');

Funciona perfeitamente, mesmo no IIS, e mover arquivos usando copy, desde que seja entre as pastas no próprio servidor, funciona sem problemas...

 

Já utilizei também:

echo rename("meuarquivo.txt", "LPT1");

E funcionou somente no APACHE, no IIS nada...

 

Aguardo idéias, mesmo que seja uma abordagem diferente para o problema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galerinha. Não teve jeito. Tive de solicitar algumas alterações no servidor IIS para fazer esse troço funcionar.

 

Para aqueles que estiverem com a mesma dificuldade, seguem os passos para alterar o servidor:

 

- Clicando sobre o site que se quer alterar (no IIS) deve-se clicar no menu lateral direito na opção EDITAR SITE=>Definições Básicas;

- Na tela que se abre deve-se selecionar o primeiro botão a esquerda LIGAR COMO;

- Marcar a opção UTILIZADOR ESPECÍFICO e clicar em DEFINIR;

- Adicionar um nome de usuário cadastrado no active directory que possua as permissões necessárias lembrando que deve-se utilizar o nome do domínio neste caso, por exempo: seudominio\nome.sobrenome;

- Adicionar a mesma senha cadastrada para o usuário no active directory;

- Confirmar, confirmar...

 

É isso. Estou colocando este passo a passo pois procurei bastante informações sobre como resolver este problema na WEB e não obtive sucesso.

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.