Archive for março de 2015

cURL e OpenSSL não funcionam no PHP com IIS

março 25th, 2015

Já configurou o caminho do php no path do sistema, já descomentou as linhas
extension=php_curl.dll
extension=php_openssl.dll
no php.ini, executou php -m no prompt e o curl e openssl foram carregador, mas no php.ini do teu site ele não carrega? Passei por isso, a solução que achei foi copiar os arquivos ssleay32.dll e libeay32.dll do diretório do php para o %windir%\system32.

O link que me deu luzes para resolver o caso foi esse: http://stackoverflow.com/questions/1343514/how-to-get-curl-to-work-with-php-on-windows-wamp

No meu caso não cheguei a fazer a solução proposta, só fui testando os procedimentos do cara que fez o questionamento, e quando fiz isso funcionou.

SysWoW64 System32 Sysnative

março 4th, 2015

Estava fazendo um script em php para limpar o diretório C:\WINDOWS\System32\inetsrv\backup de tempos em tempos, mas meu script informava que o diretório não existia, e ele estava lá, conseguia ver no explorer.

Resumindo, a máquina que eu estava fazendo isso era em 64bits, isso aconteceu porque o php do servidor rodava em 32bits, pesquisando descobri que uma aplicação 32bits quando acessa o diretório C:\WINDOWS\System32 é redirecionada para o diretório C:\WINDOWS\SysWoW64, e o diretório C:\WINDOWS\SysWoW64\inetsrv\backup realmente não exisita.

Como fiz para contornar a situação? Com o tempo aprendi que a Microsoft adora gambiarra, diria até que ama. Para que o script funcionasse, precisei utilizar o path C:\WINDOWS\sysnative\inetsrv\backup.

Aplicações em 32bits para acessar o diretório system32, precisam usar o path sysnative, mas se tu for no explorer e tentar acessar o c:\windows\sysnative, tu não vai conseguir, porque o diretório não é acessível em aplicações 64bits, somente 32bits :D.

Link da explicação detalhada: http://comments.gmane.org/gmane.os.cygwin/148335
Link da microsoft sobre o File System Redirector: https://msdn.microsoft.com/en-us/library/windows/desktop/aa384187(v=vs.85).aspx