Nota: Esse problema parece se aplicar a todas as versões do Magento que receberam o patch SUPEE-6788. Você verá na minha resposta que ambos .htaccess
e .htaccess.sample
precisam ser restaurados para que o patch seja bem-sucedido.
Estou trabalhando para aplicar o patch SUPEE-6788 em um site CE 1.7.0.2 usando o script de shell fornecido por magentocommerce.com/downloads . O site teve todos os patches de segurança anteriores aplicados.
O nome do script é PATCH_SUPEE-6788_CE_1.7.0.2_v1-2015-10-27-12-00-16.sh
e possui um md5sum cfc0cf533fe36a5f573414f0feeb1590
(este patch era incomum porque foi lançado sem compactação - embora o arquivo não pareça corrompido ou truncado).
Ao executar esse script, a saída do console parece indicar que pelo menos um dos patches incluídos falhou ou foi ignorado, mas que muitas partes do patch foram bem-sucedidas, no entanto, não git
estão mostrando alterações. O script foi testado em dois ambientes diferentes com a mesma base de código - um em uma estação de trabalho Ubuntu GNOME 14.04 LTS, o outro em um servidor compartilhado nexcess.com (executando o CentOS).
O interessante é que a saída nos dois ambientes é um pouco diferente. Observe as linhas que começam com "check" vs "patching".
Uma amostra da saída do ambiente Ubuntu:
bash PATCH_SUPEE-6788_CE_1.7.0.2_v1-2015-10-27-12-00-16.sh [19:27:10]
Checking if patch can be applied/reverted successfully...
ERROR: Patch can't be applied/reverted successfully.
checking file .htaccess
Hunk #1 FAILED at 207.
1 out of 1 hunk FAILED
can't find file to patch at input line 38
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|diff --git .htaccess.sample .htaccess.sample
|index 546f18e..3e79c77 100644
|--- .htaccess.sample
|+++ .htaccess.sample
--------------------------
File to patch:
Skip this patch? [y]
Skipping patch.
1 out of 1 hunk ignored
checking file app/code/core/Mage/Admin/Model/Block.php
checking file app/code/core/Mage/Admin/Model/Resource/Block.php
checking file app/code/core/Mage/Admin/Model/Resource/Block/Collection.php
checking file app/code/core/Mage/Admin/Model/Resource/Variable.php
checking file app/code/core/Mage/Admin/Model/Resource/Variable/Collection.php
checking file app/code/core/Mage/Admin/Model/Variable.php
...
Uma amostra do ambiente do CentOS:
bash PATCH_SUPEE-6788_CE_1.7.0.2_v1-2015-10-27-12-00-16.sh
Checking if patch can be applied/reverted successfully...
ERROR: Patch can't be applied/reverted successfully.
patching file .htaccess
Hunk #1 FAILED at 207.
1 out of 1 hunk FAILED -- saving rejects to file .htaccess.rej
can't find file to patch at input line 38
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|diff --git .htaccess.sample .htaccess.sample
|index 546f18e..3e79c77 100644
|--- .htaccess.sample
|+++ .htaccess.sample
--------------------------
File to patch:
Skip this patch? [y]
Skipping patch.
1 out of 1 hunk ignored
patching file app/code/core/Mage/Admin/Model/Block.php
patching file app/code/core/Mage/Admin/Model/Resource/Block.php
patching file app/code/core/Mage/Admin/Model/Resource/Block/Collection.php
patching file app/code/core/Mage/Admin/Model/Resource/Variable.php
...
Eu estarei pesquisando o erro na parte superior da saída e possível aplicando manualmente os patches - mas esperava que alguém pudesse ter uma ideia da causa ou uma correção relativamente simples.
.htaccess
o arquivo -File possui exatamente 1 nova linha vazia no final do arquivo depois#FileETag none
. E o.htaccess.sample
arquivo deve ter 2 novas linhas vazias no final do arquivo.Respostas:
Parece que as mudanças tanto na minha
.htaccess
quanto na falta.htaccess.sample
são as culpadas. Depois de restaurar uma cópia de estoque de ambos os arquivos (ambos foram necessários), o patch parece ser aplicado com êxito.Para resolver isso, sem perder as modificações (necessárias), siga estas etapas:
Crie um backup de
.htaccess
e.htaccess.sample
- com seu sistema de controle de versão ou copiando os arquivosCopiei uma versão 1.7.0.2 das ações
.htaccess
e.htaccess.sample
para dentro da minha base de código, substituindo minha.htaccess
Aplicou o patch. A saída foi muito menor do que antes (2 linhas).
Confirmou todas as alterações, incluindo
.htaccess
(para posteridade)Efetuou check-out da versão anterior
.htaccess
, sem o patch, e aplicou-o manualmente a esse arquivo.Aqui está o
git diff
patch, mostrando as linhas adicionadas:fonte
app/etc/applied.patches.list
e / ou use magereport.com/scan para verificar se todos os patches de segurança anteriores foram aplicados & ndash; ** eles são necessários **Warning: .htpasswd file should be placed somewhere not accessible from the web
Qualquer ideia?Eu tentei baixar versões de ações de
.htaccess
e.htaccess.sample
e o patch ainda não se aplicaria mesmo depois de usar as versões de ações.Para qualquer outra pessoa que esteja enfrentando esse problema, dê uma olhada neste artigo, que explica como remover as peças
.htaccess
ehtaccess.sample
do próprio patch e adicioná-las manualmente depois: http://www.atwix.com/magento/security-patch-supee-6788 -Problemas de instalação/CORRECÇÃO - edite o arquivo de correção removendo as linhas 163-195, começando pela linha
e termina com
Você também pode precisar remover a parte relacionada a
htaccess.sample
isso começa come termina às
Depois disso, tente aplicar o patch novamente e ele deve ser aplicado com sucesso dessa vez.
Em seguida, precisamos adicionar o seguinte ao final de nossos arquivos
.htaccess
e.htaccess.sample
para que eles estejam atualizados conforme o patchApós essas etapas, eu pude aplicar o patch com sucesso, espero que ajude!
fonte
Isso pode ajudá-lo, mesmo que seja uma versão diferente - https://community.magento.com/t5/Security-Patches/1-9-1-0-applying-patch-6788-hunk-failed/td-p/ 20070
fonte
Eu tive o mesmo problema, foi porque eu baixei o patch errado. Estou usando o Magento EE 1.13 e baixei um patch CE ... Baixei o patch para o CE 1.8 enquanto seguia um tutorial, pensando que funcionaria para o EE 1.13. Certifique-se de baixar o patch para sua versão do Magento.
fonte
fonte