mirror of
https://github.com/dergigi/boris.git
synced 2025-12-16 22:24:25 +01:00
Merge pull request #45 from dergigi/fix-a-path-regression
fix: gate /a/:naddr rewrite to crawlers to prevent refresh redirect
This commit is contained in:
@@ -60,7 +60,7 @@ ${articleTags}
|
||||
</head>
|
||||
<body>
|
||||
<noscript>
|
||||
<p>Redirecting to <a href="/">Boris</a>...</p>
|
||||
<p>Redirecting to <a href="/a/${naddr}">Boris</a>...</p>
|
||||
</noscript>
|
||||
<script>
|
||||
(function(){
|
||||
@@ -69,7 +69,8 @@ ${articleTags}
|
||||
if (window.location.pathname !== p) {
|
||||
history.replaceState(null, '', p);
|
||||
}
|
||||
window.location.replace('/');
|
||||
var sep = window.location.search ? '&' : '?';
|
||||
window.location.replace(p + sep + '_spa=1');
|
||||
} catch (e) {}
|
||||
})();
|
||||
</script>
|
||||
|
||||
10
src/App.tsx
10
src/App.tsx
@@ -755,6 +755,16 @@ function App() {
|
||||
}
|
||||
}, [showToast])
|
||||
|
||||
// Strip _spa query parameter from URL after SPA loads
|
||||
useEffect(() => {
|
||||
const url = new URL(window.location.href)
|
||||
if (url.searchParams.has('_spa')) {
|
||||
url.searchParams.delete('_spa')
|
||||
const path = url.pathname + (url.search ? url.search : '') + url.hash
|
||||
window.history.replaceState(null, '', path)
|
||||
}
|
||||
}, [])
|
||||
|
||||
if (!eventStore || !accountManager || !relayPool) {
|
||||
return (
|
||||
<div className="loading">
|
||||
|
||||
@@ -9,6 +9,13 @@
|
||||
}
|
||||
},
|
||||
"rewrites": [
|
||||
{
|
||||
"source": "/a/:naddr",
|
||||
"destination": "/index.html",
|
||||
"has": [
|
||||
{ "type": "query", "key": "_spa", "value": "1" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"source": "/a/:naddr",
|
||||
"destination": "/api/article-og?naddr=:naddr"
|
||||
|
||||
Reference in New Issue
Block a user