Jump to content

Recommended Posts

Olá,

 

Alguém saberia dizer quais arquivos controlam API?

 

Estou com algum problema para conseguir a lista de produtos via API e parece ser um problema de permissão e gostaria de ver se os arquivos em questão estão corretos.

 

Obrigado!

Link to comment
Share on other sites

Qual API ? Cada módulo possue a sua API própria (AP= application = aplicacao)

 

Suponho que vc. se refere à um servico através de webservice ? Se sim, entao terá que contatar que lhe escreveu o script para o servico em questao.

 Na verdade o webservice quer acessar api/products mas dá erro 500. Eu sei que é um erro de permissão só que não sei exatamente qual arquivo.

 

Já para acessar api/customers não há problema.

Link to comment
Share on other sites

O modo debug está ativado?

Se vc acessar o navegador diretamente (ex: sualoja.com.br/api/products?schema=synopsis) deve aparecer o erro.

 Por incrível que pareça mesmo com o debug ativado continua dando Internal error. To see this error please display the PHP errors.

 

Agora se eu faço CHMOD de todas as pastas pra 755 e arquivos p/ 644 ele funciona, porém aí tenho outros erros por isso gostaria de saber exatamente que arquivo para poder fazer manualmente.

Edited by soluthier (see edit history)
Link to comment
Share on other sites

Se está aparecendo isso é porque o servidor não permitiu mostrar os erros.

Não dá pra saber qual é o erro ou qual pasta alterar as permissões.

 

Normalmente quando se tem que configurar manualmente as permissões, sem chance de configurar o suPHP/suExec eu recomendo trocar de servidor.

 

Um servidor bom facilita muito a nossa vida. 

 

Oficialmente, os parâmetros de permissões estão aqui: http://doc.prestashop.com/display/PS16/Installing+PrestaShop#InstallingPrestaShop-Systemcompatibility

 

Talvez alguém com experiência em resolver manualmente esses problemas de servidores possa lhe auxiliar...

Link to comment
Share on other sites

Amazon bom ? Tenho as minhas dúvidas. Eles também enchem os servidores deles com trocentas páginas, somente para preencher a capacidade que têm cobrando pelo servico.... Além deles correrem nos servidores as próprias páginas como amazon, netflix, etc.... Amazon trabalha da mesma maneira que muitos outros grandes provedores... Acredito que um firewall mal instalado esteja bloqueando o seu servico. Para descobrir, somente lendo os erros (que eles suprimem, coisa normal em um network(cloud), aonde de fato nao existem protocolos abertos (ao público) de erros). Somente insistindo....

 

Nao existe nada melhor do que um servidor dedicado mesmo. ;)

Link to comment
Share on other sites

Amazon provavelmente é o melhor servidor do mercado. Mas configurá-lo bem para atender às necessidades do PrestaShop é um trabalho para experts em Servidores Amazon (não apenas servidores normais).

Se for possível, recomendo que contrate um VPS comum, onde vc pode escolher o painel de gerenciamento que preferir para o seu servidor.

 

Nós (PrestaBR) trabalhamos com o cPanel - que deixa tudo funcionando perfeitamente, sem muita dor de cabeça - e a Amazon não oferece suporte ao cPanel, então, não utilizamos nem recomendamos.

 
Boa sorte.
Link to comment
Share on other sites

@ Daniel -

 

Nao estou escrevendo este tópico para recomendar o OVH pois também este possue um suporte péssimo, mas sim estou comparando dois pacotes quase idênticos. De nada adianta o servidor (hardware) ser bom, se por trás nao existe um pacote de instalacao usável, sem know-how de um Expert no produto.

 

Antes de mudar para o OVH eu testei o AWS-EC2. Pessoalmente prefiro ficar com o OVH VPS cloud em vez. Ambos pacotes sao comparáveis, no entanto sem conhecimentos de como instalar e configurar um servidor é melhor deixar mesmo, sendo que o OVH com os pacotes prontos que se escolhe acaba vencendo.

 

Creio que soluthier também esteja usando um pacote padrao sem ter mexido na configuracao.

 

Veja os problemas que se dao: http://www.webpagetest.org/result/150529_G1_ZP9/

 

Com o pacote OVH cloud debian (Plesk) o OVH acaba vencendo em: Cache, keep alive, compressao que no OVH sao standard. No EC2 parece que nao, pelo menos o teste falhou.

 

Como vc. mesmo disse. Amazon é para experts (Amazon). Neste caso entao é melhor um outro VPS (Cloud) já pré-configurado ou entao mesmo um servidor dedicado, se se possue conhecimentos suficientes.

Lógico que o preco do VPS Cloud e do Amazon se mantém muito mais baixos em relacao à um dedicado. Amazon até é gratuíto, se nao se usa mais que 750 horas por mes. Uma coisa que acaba explodindo, se a loja e o tráfico sao grandes. Até o load balancer eles restringem, sendo que vc. consumindo (sem querer) acaba pagando creio que até mais. Prefiro pacotes sem limíte e também com custos previsíveis.

 

Quanto ao problema do soluthier tenho certeza em 90% que uma firewall ou configuracao erronea (faltante) está bloqueando o servico. Agora para descobrir a configuracao correta no EC2 isto já é, e aí eu concordo plenamente com a sua opiniao, coisa impossível para nao admins Amazon. De nada adianta possuir um espaco WEB que nao se sabe administrar, ou necessita de um Expert. Aí é melhor comprar mesmo um pacote pronto e pagar uns poucos $ por mes, sem dores de cabeca, e quando dá deixar o suporte trabalhar na solucao....

  • Like 1
Link to comment
Share on other sites

Na verdade (quase) descobri o que é:

 

Ativando o modo PHP error eu consigo acessar a api/products normalmente. Somente o debug "true"não mostra.  Só que não dá pra deixar o PHP error reporting ligado pois aparecem outros erros de código.

 

Aparentemente tem algum erro no código do Prestashop:

 

Declaration of ProductCore::validateField() should be compatible with ObjectModelCore::validateField($field, $value, $id_lang = NULL, $skip = Array, $human_errors = false) (/home/xxxxx/public_html/loja/classes/Product.php, line 5279) 

 

Lembrando que é versão 1.5.4.1

 

Se alguém puder ajudar eu agradeço!

Link to comment
Share on other sites

A validacao do campo no ficheiro /classes/Product.php, linha 5279) nao está sendo aceita (incompatível com) o controller do ObjectModelCore.

 

Vc. fez alguma alteracao em ficheiros do core ?

 

Compare a linha em questao /classes/Product.php linha 5279  com o ficheiro do ObjectModelCore. Ambas linhas devem ser idênticas (atente também para a escrita em mínusculo e maiúsculo):

 

OjectModelCore:

public function validateField($field, $value, $id_lang = null, $skip = array(), $human_errors = false)

 

 

PS: também todos os outros erros que vc. está tendo deverao ser debugados !!!

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...