我有以下情况: 安装了firefox和chrome的Ubuntu 16.04机器,chrome是我的默认浏览器。
我在shell中检查这些动作:
cat /usr/share/applications/defaults.list
cat /etc/mailcap
cat /.config/mimeapps.list
cat /.local/share/applications/mimeinfo.cache
x-www-browser-> chrome is launch
xdg-mime query default text/html
response:
google-chrome.desktop
并没有任何一方出现firefox,总是镀铬。这可以。还要检查:
点击桌面文件file.html - > chrome正在发布
如果我跑的话,现在变得奇怪了:
xdg-open "http://www.example.com"
由于一些奇怪的原因,它总是打开firefox。我不知道为什么,有人可以帮助我吗?
答案 0 :(得分:6)
要设置默认浏览器,请确保首选浏览器存在.desktop
文件。我将为此示例设置Mozilla Iceweasel:
$ ls /usr/share/applications/iceweasel.desktop
iceweasel.desktop
确保您拥有该文件,运行:
$ xdg-settings set default-web-browser iceweasel.desktop
# Test that it works
$ xdg-open "http://example.com"
我使用的程序surf
没有.desktop文件。要将其设置为Web浏览器,请首先使用以下内容创建文件~/.local/share/applications/surf.desktop
:
[Desktop Entry]
Type=Application
Name=surf
Comment=Surf minimal web browser
Terminal=false
Exec=surf
Categories=Network;WebBrowser
虽然并非所有这些内容都是必需的,但它有助于对文件进行分类以供将来使用。
将普通浏览器设置为正常:
$ xdg-settings set default-web-browser surf.desktop
现在你好了!
答案 1 :(得分:1)
text/html 用于 html 文件,即如果您打开一个 html 文件,它将在 google chrome 中打开。要打开网址,您需要有 x-scheme-handler/https 和 x-scheme-handler/http 条目。
您可以使用 xdg-mime 进行设置。例如将 google chrome 设置为 xdg-open 的默认浏览器:
xdg-mime default google-chrome.desktop x-scheme-handler/https
xdg-mime default google-chrome.desktop x-scheme-handler/http
或者你可以在 ~/.config/mimeapps.list 中加入以下几行
x-scheme-handler/http=google-chrome.desktop
x-scheme-handler/https=google-chrome.desktop
上面的命令基本上将这些行插入到该文件中。
注意:您显然应该在 ~/.local/share/applications 或系统范围的替代位置 - /usr/share/applications 下拥有 google-chrome.desktop 文件。
答案 2 :(得分:-3)
解决,只需打开Chrome浏览器并设置为默认浏览器。这解决了这个问题。