blob: 18cfc2af0f7e9cf82c2862c62b3afd4080b4d421 [file] [log] [blame]
const fs = require('fs-extra');
const path = require('path');
const target = path.join(__dirname, '../.deploy_git/')
const redirectDate = path.join(__dirname, '../docs/.vuepress/data/redirect.json');
async function generate () {
const output = '.htaccess'
await fs.ensureFile(path.join(target, output))
fs.writeFile(path.join(target, output),
`###############################################################################
# WARNING
###############################################################################
# Only modify this file if you know what you're doing. This file has
# the potential to make pages become PERMANENTLY UNREACHABLE. If in
# doubt, refer to these links:
#
# RewriteRule - http://httpd.apache.org/docs/current/mod/mod_rewrite.html
# RewriteRule flags - http://httpd.apache.org/docs/current/rewrite/flags.html
# .htaccess tester - http://htaccess.madewithlove.be/
#
# And remember: three-oh-ONE (301) menas you get ONE chance to get it right;
# three-oh-TWO (302) means you get TWO chances.
###############################################################################
# set error pages
ErrorDocument 404 https://weex.apache.org/404.html
# turn off automatic directory indices
#Options -Indexes
# turn on redirection
Options +FollowSymLinks
RewriteEngine on
#
# NOTE:
# Meanings of some of the flags at the ends of rules:
#
# L - terminal rule; if it applies, no more rules are checked
# R - redirect (followed by code)
# NE - no escaping special characters
# 302 (temporary):
#
# references/modules/ -> docs/modules/
# cn/references/modules/ -> zh/docs/api/modules/
# references/components/ -> docs/components/
# cn/references/components/ -> zh/docs/api/components/
#
RewriteRule "^.*cn/references/modules/(.*)$" "https://weex.apache.org/zh/docs/modules/$1" [R=301,L]
RewriteRule "^.*references/modules/(.*)$" "https://weex.apache.org/docs/modules/$1" [R=301,L]
RewriteRule "^.*cn/references/components/(.*)$" "https://weex.apache.org/zh/docs/components/$1" [R=301,L]
RewriteRule "^.*references/components/(.*)$" "https://weex.apache.org/docs/components/$1" [R=301,L]
# Redirect http to https
# From Cordova PMC Member raphinesse
# https://s.apache.org/An8s
# If we receive a forwarded http request from a proxy...
RewriteCond %{HTTP:X-Forwarded-Proto} =http [OR]
# ...or just a plain old http request directly from the client
RewriteCond %{HTTP:X-Forwarded-Proto} =""
RewriteCond %{HTTPS} !=on
# Redirect to https version
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]`, (error) => {
if (error) {
console.error(`Generate .htaccess error: ${error && error.stack}`)
}
})
}
generate()