Est-il possible d'utiliser Chrome avec et sans sécurité Web en même temps?


37

J'ai récemment découvert que je pouvais désactiver la "sécurité Web" de Chrome à l'aide d'un argument de ligne de commande, facilitant ainsi le développement de JavaScript. Le problème est que je n'arrive pas à exécuter plus d'une "instance" de Chrome à la fois. Si, chrome.exe --disable-web-securityalors que Chrome est déjà en cours d'exécution, Chrome ouvre une nouvelle fenêtre au sein de l'instance en cours d'exécution et ignore mes arguments de ligne de commande. Je peux fermer Chrome complètement et le relancer avec l'argument de ligne de commande ci-dessus, mais toutes mes fenêtres fonctionneront sans sécurité Web, ce qui est une mauvaise chose pour l'utilisation du navigateur en général.

Donc, pour résumer la question: est-il possible de démarrer une instance de Chrome avec l' --disable-web-securityindicateur pendant qu'une instance de Chrome normale est en cours d'exécution?


Remarque: je soupçonne que la réponse se trouve peut-être dans les commutateurs de ligne de commande de Chrome , mais il y en a tout simplement plus ...

Réponses:


41

J'ai trouvé une question similaire sur Ask Ubuntu . Apparemment, vous pouvez dire à Chrome de démarrer une nouvelle session en lui transmettant un nouveau répertoire de données utilisateur. Cela signifie que je peux maintenant exécuter cette commande:

chrome.exe --user-data-dir="C:/Chrome dev session" --disable-web-security

Et une nouvelle fenêtre Chrome s'ouvre avec la sécurité Web désactivée. Yay!


Remarque: Cela signifie que le glisser-déposer de fenêtre ne fonctionnera pas entre ces deux fenêtres.


1
You can tell Chrome to start a new session by passing it a new user data directory. Ouaip; en fait, il le fait avec la plupart des commutateurs; une "instance" correspond à l'exécution de Chrome avec un ensemble unique d'arguments (dans n'importe quel ordre). Il se peut que son comportement ne soit pas exactement le même maintenant, mais user-data-dirau minimum, il déclenchera toujours une nouvelle instance. Window drag & drop won't work between these two windows. Nan; En ce qui concerne Chrome, ils proviennent de deux navigateurs / applications différents. Méfiez-vous également des gestionnaires: l'exécution d'un .htmfichier ou d'un signet s'ouvrira dans une instance avec les arguments spécifiés dans l'enregistrement de type.
Synetech

Existe-t-il un moyen de faire cela sous Mac OS X?
Août

1
@aug: Je ne peux pas tester, mais essayer (du terminal): open -a /Applications/Chrome.app --user-data-dir="/tmp/chrome_dev_session" --disable-web-security. Je suppose ici qu'OSX a un répertoire "/ tmp /", vous pouvez changer le chemin s'il ne le fait pas.
Hubro

1
Je reçois ceciyou are using an unsupported command-line flag disable-web-security
CodyBugstein

1
@CoryMawhorter C'est déjà dans une réponse ci
Hubro

6

Fermez toutes les fenêtres ouvertes dans le navigateur Chrome. Si plusieurs fenêtres sont ouvertes, fermez tout séparément. Ensuite, vous pouvez ouvrir Chrome en utilisant le code suivant dans "RUN" :

chrome.exe --allow-file-access-from-files --disable-web-security

3

En réponse aux commentaires de @aug et de @ hubro, vous pouvez utiliser l' indicateur de la opencommande -npour ouvrir une nouvelle instance d'une application via le terminal de Mac OS X:

open -n -a /Applications/Chrome.app

Vous pouvez ajouter les indicateurs que vous souhaitez utiliser (comme --disable-web-security) à la fin de cette commande.


Cela ne semble pas créer une nouvelle instance. Parce que quand je l'essaie dans l'ancien cas (avec la sécurité non désactivée) je peux faire cors
tobbe

Hein, tu as raison! La page de manuel de la opencommande indique que l' -nindicateur sert à ouvrir une nouvelle instance d'une application, mais il semble que Chrome & Chromium possède une sorte de logique empêchant l'ouverture de plusieurs instances de l'application. La commande fonctionne telle quelle pour Safari, par exemple.
arielkirkwood

Puisque cette réponse est incorrecte, pouvez-vous la supprimer?
Noel Yap

1
Je n'ai pas un Mac, mais j'ai entendu dire que cela fonctionne si vous incluez l'option de données --user-dir-aussi: open -n -a /Applications/Chrome.app --user-data-dir="/tmp/chrome_dev_session" --disable-web-security. S'il vous plaît donner que l'essayer.
Sam Watkins

1
L'approche de @ SamWatkins a fonctionné pour moi dans macOS Sierra, mais uniquement après avoir ajouté l' --argsindicateur et ouvert le fichier exécutable de Chrome (et non le conteneur Chrome.app). Alors:open -n -a /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --args --user-data-dir="/tmp/chrome_dev_session_2" --disable-web-security
Bungle

3

Pour Mac:

/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --user-data-dir="/tmp/chrome_dev_session" --disable-web-security 

Remplacez-le par votre chemin particulier vers Chrome si nécessaire.


En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.