2012-05-24 4 views

Antwort

6

Wenn Sie sich auf ein Shared-Hosting und kann nicht Server-Konfiguration ändern, PHP verwenden:

<?php 
$file = 'extension.crx'; 

if (file_exists($file)) { 
    header('Content-Description: File Transfer'); 
    header('Content-Type: application/x-chrome-extension'); 
    header('Content-Disposition: attachment; filename='.basename($file)); 
    header('Content-Transfer-Encoding: binary'); 
    header('Expires: 0'); 
    header('Cache-Control: must-revalidate'); 
    header('Pragma: public'); 
    header('Content-Length: ' . filesize($file)); 
    ob_clean(); 
    flush(); 
    readfile($file); 
    exit; 
} 
?> 

source

Dies wird Datei (durch $file Variable angegeben) zwingen, mit angepassten Header herunterladen.

+0

Vielen Dank @Konard, das war sehr hilfreich. – zur4ik

+2

Das ist technisch richtig, funktioniert aber in neueren Versionen von Chrome nicht mehr: https://support.google.com/chrome_webstore/answer/2664769 – bfncs

1

Ich weiß nicht, was Web-Server Sie verwenden, aber für Apache können Sie wie folgt vorgehen:

  1. vi /path/to/your/httpd/conf/mime.types
  2. Fügen Sie diese Zeile: application/x-chrome-extension crx am Ende der Datei
  3. Restart Webserver: killall -HUP httpd

Oder Sie können das Hinzufügen dieser Zeile in die Datei .htaccess versuchen:

AddType application/x-chrome-extension crx 

Und es sollte funktionieren!

+0

Ich verwende ein Shared-Hosting, so dass ich Apache-Einstellungen nicht bearbeiten kann. Könnte ich das in PHP machen? – xRobot

+1

Ich habe etwas gefunden. Sie können versuchen, diese zu Ihrem .htaccess hinzufügen: AddType-Anwendung/x-Chrome-Erweiterung crx – divaka

Verwandte Themen