我正在尝试找出一种方法来阻止开发人员将我的网站嵌入到他们的 Android 应用程序中。我尝试过用户代理嗅探,但遇到了一个问题:我不小心阻止了移动浏览器上的 Android 用户查看我的网站。有什么方法可以通过 JavaScript 或其他工具来检测网站是否已嵌入?
在您的 Nginx 配置中,添加:
add_header X-Frame-Options "DENY";
如果这不起作用,请尝试:
add_header Content-Security-Policy "frame-ancestors 'none';";
如果两者都失败,请将其添加到您的布局中:
function isWebView() {
const userAgent = navigator.userAgent || navigator.vendor || window.opera;
return /wv|Android|iPhone/i.test(userAgent) && !window.MSStream;
}
if (isWebView()) {
document.body.innerHTML = '<h1>Access Denied</h1>';
}