openstack-manuals/www/.htaccess

89 lines
3.6 KiB
ApacheConf

{% set series = 'latest' %}
{% set projects = PROJECT_DATA[series] %}
# Redirecting End-of-Life (EOL) versions, see https://wiki.openstack.org/wiki/Releases:
redirectmatch 301 /bexar/.*$ /index.html
redirectmatch 301 /cactus/.*$ /index.html
redirectmatch 301 /diablo/.*$ /index.html
redirectmatch 301 /essex/.*$ /index.html
redirectmatch 301 /folsom/.*$ /index.html
redirectmatch 301 /grizzly/.*$ /index.html
redirectmatch 301 /havana/.*$ /index.html
# We still have the config-reference available
redirectmatch 301 /icehouse/(?!config-reference)/.*$ /index.html
redirectmatch 301 /juno/(?!config-reference)/.*$ /index.html
redirectmatch 301 /kilo/(?!config-reference)/.*$ /index.html
redirectmatch 301 /liberty/(?!config-reference)/.*$ /index.html
# Redirect docs.openstack.org index.html subpage pointers to main page
redirect 301 /install/ /
redirect 301 /basic-install/ /
redirect 301 /run/ /
redirect 301 /developer/index.html /openstack-projects.html
redirect 301 /cli/ /
redirect 301 /api/api-specs.html http://developer.openstack.org/api-guide/quick-start/index.html
# Redirect O'Reilly Operations Guide PDF to trunk version
redirect 301 /trunk/openstack-ops/oreilly-openstack-ops-guide.pdf /openstack-ops/openstack-ops-manual.pdf
# Redirect old Admin Guide to new landing page
redirectmatch 301 /admin-guide/.*$ /admin/index.html
# A doc generation bug resulted in Google indexing links containing "//", which cause
# problems with linked content (images/css/etc). This rule generates a 301 redirect
# for these links.
#
# details: https://bugs.launchpad.net/openstack-manuals/+bug/1288513
redirectmatch 301 (.*)//(.*) $1/$2
# Redirect networking-guide since it is now versioned
redirect 301 /networking-guide/ /ocata/networking-guide/
# Redirect old releases content to new location
redirectmatch 301 "^/releases.*$" http://releases.openstack.org$1
# Redirect removed user guide
redirectmatch 301 /user-guide/.*$ /user/
# Redirect removed ops guide
redirectmatch 301 /ops-guide/.*$ /admin/
# Redirect changed directory name in the Contributor Guide
redirect 301 /contributor-guide/ui-text-guidelines.html /contributor-guide/ux-ui-guidelines/ui-text-guidelines.html
redirect 301 /contributor-guide/ui-text-guidelines /contributor-guide/ux-ui-guidelines
# Redirect any deploy guide project directory back to the current stable index
redirectmatch 301 "^/project-deploy-guide/$" /project-deploy-guide/ocata/
redirectmatch 301 "^/project-deploy-guide/openstack-ansible/$" /project-deploy-guide/openstack-ansible/ocata/
# Redirecting infra docs links to new developer location
redirectmatch 301 "^/infra/shade(.*)$" /developer/shade$1
# Redirecting old project developer docs to the new project home pages
# while leaving the index / project list page as it is.
redirectmatch 301 "^/developer/([^/]+)/.*$" /$1/latest/
# Redirect old cli-reference to the OSC latest docs
redirectmatch 301 "^/cli-reference/.*$" /python-openstackclient/latest/
# Redirects from service-type to code-name
{% for project in projects -%}
{%- if project.type == 'service' and project.service_type and (project.service_type|lower != project.name) %}
redirectmatch 302 "^/{{project.service_type|lower}}/.*$" /{{project.name}}/latest/
{%- endif %}
{%- endfor %}
# End service-type redirects
# Redirects from code-name without a series to latest
{% for repo in REGULAR_REPOS %}
redirectmatch 301 "^/{{repo.base}}/$" /{{repo.base}}/latest/
{%- endfor %}
# End latest code-name redirects
# Redirects from infra code-name without a series to location
{% for repo in INFRA_REPOS %}
redirectmatch 301 "^/{{repo.base}}/$" /infra/{{repo.base}}/
{%- endfor %}
# End infra code-name redirects