Força o download de arquivos PY no Edge e IE

1

Clicar em um link para um arquivo PY no Google Chrome faz o download conforme desejado, mas no Microsoft Edge, o Internet Explorer simplesmente o visualiza.

Este é um problema com os navegadores da web ou com o servidor da web? Se o último, como o IIS 10 pode ser configurado para sempre forçar downloads de arquivos PY?

Eu tentei o seguinte, mas nada fez diferença:

  1. De acordo com link , adicionando os tipos MIME abaixo para a extensão .py :
    1a. application/octet-stream
    1b. file/download
    1c. application/x-python-code
    1d. text/x-python
  2. De acordo com o link , adicionando uma regra de reconfiguração de saída que resultou nos seguintes valores no arquivo web.config :

<outboundRules>
    <rule name="PY_ForceDownload" preCondition="PY_Precondition">
        <match serverVariable="RESPONSE_Content-Disposition" pattern=".*" />
        <conditions>
            <add input="{REQUEST_FILENAME}" pattern="(.*)\([^/]+)\.py$" />
        </conditions>
        <action type="Rewrite" value="attachment; filename={C:2}.py" />
    </rule>
    <preConditions>
        <preCondition name="PY_Precondition">
            <add input="{REQUEST_FILENAME}" pattern="\.py$" />
        </preCondition>
    </preConditions>
</outboundRules>
    
por mythofechelon 11.10.2018 / 16:59

1 resposta

1

Para forçar um link como um download, é provavelmente mais fácil apenas modificar o seu html.

<a href="yourPython.py" download>Some link text.</a>

Adicionar o atributo download fará com que o navegador baixe o arquivo em vez de abri-lo (assumindo o html5).

Aqui está a descrição da w3school, se desejar ler mais sobre ela

Você também pode tentar definir o tipo MIME como file/download no gerenciador do IIS.

    
por 11.10.2018 / 18:41

Tags