Skip to content

Commit

Permalink
add http headers to help search engines index the docs
Browse files Browse the repository at this point in the history
  • Loading branch information
davidhewitt committed Jun 21, 2023
1 parent b2a1a96 commit 49d9d7a
Showing 1 changed file with 26 additions and 2 deletions.
28 changes: 26 additions & 2 deletions .netlify/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -17,21 +17,45 @@ mv pyo3-gh-pages netlify_build
## Configure netlify _redirects file

# Add redirect for each documented version
set +x # these loops get very spammy and fill the deploy log

for d in netlify_build/v*; do
version="${d/netlify_build\/v/}"
echo "/v$version/doc/* https://docs.rs/pyo3/$version/:splat" >> netlify_build/_redirects
if [ $version != $PYO3_VERSION ]; then
# for old versions, mark the files in the latest version as the canonical URL
for file in $(find $d -type f); do
file_path="${file/$d\//}"
# remove index.html and/or .html suffix to match the page URL on the
# final netlfiy site
if [[ $file_path == index.html ]]; then
file_path="")
elif [[ $file_path == *.html ]]; then
file_path="${file_path%.html}"
fi
echo /v$version/$file_path
echo "/v$version/$file_path" >> netlify_build/_headers
if test -f "netlify_build/v$PYO3_VERSION/$file_path"; then
echo " Link: <https://pyo3.rs/v$PYO3_VERSION/$file_path>; rel=\"canonical\"" >> netlify_build/_headers
else
# this file doesn't exist in the latest guide, don't index it
echo " X-Robots-Tag: noindex" >> netlify_build/_headers
fi
done
fi
done

# Add latest redirect
echo "/latest/* /v${PYO3_VERSION}/:splat" >> netlify_build/_redirects
echo "/latest/* /v${PYO3_VERSION}/:splat 302" >> netlify_build/_redirects

## Add landing page redirect
if [ "${CONTEXT}" == "deploy-preview" ]; then
echo "/ /main/" >> netlify_build/_redirects
else
echo "/ /v${PYO3_VERSION}/" >> netlify_build/_redirects
echo "/ /v${PYO3_VERSION}/ 302" >> netlify_build/_redirects
fi

set -x
## Generate towncrier release notes

pip install towncrier
Expand Down

0 comments on commit 49d9d7a

Please sign in to comment.