ନିୟୋଜନ ଏବଂ ଅନଲାଇନ୍ |
i18n.site
ଗୋଟିଏ ପୃଷ୍ଠାର ପ୍ରୟୋଗ ସ୍ଥାପତ୍ୟ ଗ୍ରହଣ କରେ, ଏବଂ ୱେବସାଇଟ୍ ପ୍ରବେଶ ପୃଷ୍ଠା ଏବଂ ୱେବସାଇଟ୍ ବିଷୟବସ୍ତୁ ସ୍ୱାଧୀନ ଭାବରେ ନିୟୋଜିତ |
ଉପରୋକ୍ତ ଅନୁବାଦ ଚଲାଇବା ପରେ, md/out/dev
ଡିରେକ୍ଟୋରୀ ଅଧୀନରେ htm
ଏବଂ v
ଡିରେକ୍ଟୋରୀଗୁଡ଼ିକ ସୃଷ୍ଟି ହେବ |
ଏଠାରେ, dev
ଅର୍ଥାତ୍ ଏହା .i18n/htm/dev.yml
ବିନ୍ୟାସ ଫାଇଲ୍ ଉପରେ ଆଧାରିତ |
dev
ଡିରେକ୍ଟୋରୀ :
htm
ଡିରେକ୍ଟୋରୀ ହେଉଛି ୱେବସାଇଟ୍ ପ୍ରବେଶ ପୃଷ୍ଠା |
v
ଡିରେକ୍ଟୋରୀରେ ସଂସ୍କରଣ ସଂଖ୍ୟା ସହିତ ୱେବସାଇଟ୍ ବିଷୟବସ୍ତୁ ଅଛି |
ସ୍ଥାନୀୟ ପୂର୍ବାବଲୋକନ ସଂସ୍କରଣ ସଂଖ୍ୟା ବିଷୟରେ ଚିନ୍ତା କରେ ନାହିଁ ଏବଂ ସମସ୍ତ ଫାଇଲଗୁଡ଼ିକୁ out/dev/v/0.1.0
ଡିରେକ୍ଟୋରୀରେ କପି କରିବ |
ଅଫିସିଆଲ୍ ରିଲିଜ୍ ପାଇଁ, ପରିବର୍ତ୍ତିତ ଫାଇଲଗୁଡ଼ିକୁ ନୂତନ ସଂସ୍କରଣ ନମ୍ବର ଡିରେକ୍ଟୋରୀରେ କପି କରାଯିବ |
-c
ସହିତ ବିନ୍ୟାସ ଫାଇଲ ନିର୍ଦ୍ଦିଷ୍ଟ କରନ୍ତୁ |
ବିଭିନ୍ନ ବିନ୍ୟାସ ଫାଇଲଗୁଡ଼ିକ out
ଡିରେକ୍ଟୋରୀରେ ଅନୁରୂପ ଡିରେକ୍ଟୋରୀ ସୃଷ୍ଟି କରିବ |
ଉଦାହରଣ ସ୍ୱରୂପ, .i18n/htm/main.yml
ଟି out/main
ଡିରେକ୍ଟୋରୀ ସୃଷ୍ଟି କରିବ |
dev.yml
ଏବଂ main.yml
ହେଉଛି ଡିଫଲ୍ଟ ବିନ୍ୟାସକରଣ |
dev
ହେଉଛି development
ର ସଂକ୍ଷିପ୍ତକରଣ, ବିକାଶ ପରିବେଶକୁ ସୂଚାଇଥାଏ, ସ୍ଥାନୀୟ ପୂର୍ବାବଲୋକନ ପାଇଁ ବ୍ୟବହୃତ ହୁଏ, ଏବଂ ଏହା ମଧ୍ୟ ଡିଫଲ୍ଟ ବିନ୍ୟାସ ଫାଇଲ ଅଟେ |
ol
ହେଉଛି online
ର ସଂକ୍ଷିପ୍ତକରଣ, ଅନଲାଇନ୍ ପରିବେଶକୁ -n
, ଯାହା ଅଫିସିଆଲ୍ ରିଲିଜ୍ ପାଇଁ ବ୍ୟବହୃତ ହୁଏ npm
ଆପଣ ଅନ୍ୟ ବିନ୍ୟାସ ଫାଇଲଗୁଡିକ ମଧ୍ୟ ସୃଷ୍ଟି କରିପାରିବେ, ବ୍ୟବହାର କରିବାକୁ ବିନ୍ୟାସ ଫାଇଲ ନାମ ନିର୍ଦ୍ଦିଷ୍ଟ କରିବାକୁ ନିର୍ଦ୍ଦେଶନାମା ଉପରେ --htm_conf
ବ୍ୟବହାର କରନ୍ତୁ:
ଉଦାହରଣ ସ୍ୱରୂପ:
i18n.site --htm_conf dist --save
ଏଠାରେ --save
ଅପଡେଟ୍ ରିଲିଜ୍ ସଂସ୍କରଣ ସଂଖ୍ୟାକୁ ପ୍ରତିନିଧିତ୍ୱ କରେ |
Npmjs.com ରେ ବିଷୟବସ୍ତୁ ପ୍ରକାଶ କରନ୍ତୁ |
ବିଷୟବସ୍ତୁ ପ୍ରକାଶନ କରିବା ହେଉଛି ପରାମର୍ଶିତ ଡିଫଲ୍ଟ ସମାଧାନ ( ଫ୍ରଣ୍ଟ-ଏଣ୍ଡ ଉଚ୍ଚ ଉପଲବ୍ଧତା ଦେଖନ୍ତୁ) npmjs.com
ଲଗଇନ୍ & ପୋଷ୍ଟ npm
nodejs
ସଂସ୍ଥାପନ କରନ୍ତୁ, npm login
ସହିତ ଲଗ୍ ଇନ୍ କରନ୍ତୁ |
md/.i18n/htm/main.yml
ସଂପାଦନ କରନ୍ତୁ ଏବଂ ଆପଣଙ୍କର npm
ପ୍ୟାକେଜ୍ ନାମ npmjs.com md:
YOUR_NPM_PACKAGE
ର ମୂଲ୍ୟ ପରିବର୍ତ୍ତନ କରନ୍ତୁ |
ତା’ପରେ md/.i18n/htm/main.package.json
ପରିବର୍ତ୍ତନ କରନ୍ତୁ |
ଅନୁବାଦ ଏବଂ ପ୍ରକାଶନ କରିବାକୁ md
ଡିରେକ୍ଟୋରୀରେ i18n.site --npm
କିମ୍ବା i18n.site -n
ଚଲାନ୍ତୁ |
ଯଦି ଆପଣ ପ୍ରକାଶନ ପାଇଁ ଏକ ନିରନ୍ତର ଏକୀକରଣ ପରିବେଶ ବ୍ୟବହାର କରନ୍ତି, nodejs
ସଂସ୍ଥାପନ କରିବାର କ is ଣସି ଆବଶ୍ୟକତା ନାହିଁ | କେବଳ ଲଗ୍ ଇନ୍ କପି କରନ୍ତୁ ଏବଂ ଅନୁମତି ~/.npmrc
ପରିବେଶକୁ ପ୍ରକାଶ କରନ୍ତୁ |
ଯଦି ଆପଣ main.yml
ର v:
ର ପ୍ୟାକେଜ୍ ନାମକୁ ପରିବର୍ତ୍ତନ କରନ୍ତି, ଦୟାକରି ପ୍ରଥମେ .i18n/v/main
ଡିଲିଟ୍ କରିବାକୁ ନିଶ୍ଚିତ କରନ୍ତୁ ଏବଂ ତାପରେ ଏହାକୁ ପ୍ରକାଶ କରନ୍ତୁ |
ପ୍ରକ୍ସି ସର୍ଭର npm ଦ୍ୱାରା ପ୍ରକାଶିତ |
ଯଦି ଚାଇନାର ମଧ୍ୟପ୍ରଦେଶର ଉପଭୋକ୍ତାମାନେ ନେଟୱର୍କ ସମସ୍ୟାର ସମ୍ମୁଖୀନ ହୁଅନ୍ତି ଏବଂ npm
ପ୍ୟାକେଜ୍ ପ୍ରକାଶ କରିବାରେ ଅସମର୍ଥ ହୁଅନ୍ତି, ତେବେ ସେମାନେ ପ୍ରକ୍ସି ସର୍ଭରକୁ ବିନ୍ୟାସ କରିବାକୁ ପରିବେଶ ଭେରିଏବଲ୍ https_proxy
ସେଟ୍ କରିପାରିବେ |
ତୁମର ପ୍ରକ୍ସି ସର୍ଭର ପୋର୍ଟ 7890
ବୋଲି ମନେକରି, ତୁମେ ଲେଖି ପାରିବ:
https_proxy=http://127.0.0.1:7890 i18n.site -n
ଆତ୍ମ-ହୋଷ୍ଟ ବିଷୟବସ୍ତୁ |
ଯଦି ଆପଣ ବିଷୟବସ୍ତୁକୁ ସ୍ୱ-ହୋଷ୍ଟ କରିବାକୁ ଚାହାଁନ୍ତି, ପ୍ରଥମେ md/.i18n/htm/main.yml
ସଂପାଦନ କରନ୍ତୁ ଏବଂ v: //unpkg.com/i18n.site
ଆପଣଙ୍କର URL ଉପସର୍ଗରେ ପରିବର୍ତ୍ତନ କରନ୍ତୁ, ଯେପରିକି v: //i18n-v.xxx.com
|
md
ଡିରେକ୍ଟୋରୀ ପ୍ରବେଶ କରନ୍ତୁ ଏବଂ ଚଲାନ୍ତୁ |
i18n.site --htm_conf ol --save
କିମ୍ବା ସଂକ୍ଷିପ୍ତକରଣ
i18n.site -c ol -s
ତାପରେ, v:
ରେ ଥିବା URL ଉପସର୍ଗ ପଥରେ md/out/main/v
ଡିରେକ୍ଟୋରୀରେ ଥିବା ବିଷୟବସ୍ତୁକୁ ବିନ୍ୟାସ କରନ୍ତୁ |
ଶେଷରେ, /.v
ରୁ 1s
ରେ ଶେଷ ହେଉଥିବା ପଥର କ୍ୟାଚ୍ ସମୟକୁ ବିନ୍ୟାସ କରନ୍ତୁ , ନଚେତ୍ ନୂତନ ପ୍ରକାଶିତ ବିଷୟବସ୍ତୁକୁ ତୁରନ୍ତ ପ୍ରବେଶ କରାଯାଇପାରିବ ନାହିଁ |
ଅନାବଶ୍ୟକ ଅନୁରୋଧକୁ ହ୍ରାସ କରିବା ପାଇଁ ଅନ୍ୟ ପଥ ପାଇଁ କ୍ୟାଚ୍ ସମୟ ଏକ ବର୍ଷ କିମ୍ବା ତା’ଠାରୁ ଅଧିକ ସେଟ୍ ହୋଇପାରେ |
S3 କୁ ହୋଷ୍ଟ ବିଷୟବସ୍ତୁ |
ସ୍ host- ହୋଷ୍ଟ ବିଷୟବସ୍ତୁ ପାଇଁ, ଆପଣଙ୍କର ନିଜ ସର୍ଭର ବ୍ୟବହାର କରିବା ସହିତ, ଅନ୍ୟ CDN
ସାଧାରଣ ବିକଳ୍ପ ହେଉଛି S3
ବ୍ୟବହାର କରିବା +
ଆପଣ S3
ସର୍ଭରରେ ଲଗ୍ ଇନ୍ କରିବାକୁ rclone କରିପାରିବେ, ତାପରେ ନିମ୍ନଲିଖିତ ସ୍କ୍ରିପ୍ଟକୁ ଅନୁସରଣ କରନ୍ତୁ ଏବଂ ପରିବର୍ତ୍ତନ କରନ୍ତୁ, ଏବଂ ପ୍ରତ୍ୟେକ ପ୍ରକାଶନ ପାଇଁ କେବଳ ବର୍ଦ୍ଧିତ ପରିବର୍ତ୍ତନଗୁଡ଼ିକୁ S3
କୁ କପି କରନ୍ତୁ |
i18n.site -c ol -s
s3=your-s3
bucket=your-bucket
ver=$(head -1 .i18n/v/main/v.hash | cut -c 2-)
rclone copy --overwrite-dir out/main/htm/v/$ver $s3:/$bucket/$ver
rclone copy out/main/v/.v "$s3:/$bucket/"
CDN
ବିନ୍ୟାସ କରିବାକୁ ମନେରଖନ୍ତୁ ଯାହା ଦ୍ /.v
ରେ ସମାପ୍ତ ହେଉଥିବା ପଥର କ୍ୟାଚ୍ ସମୟ 1s
ଅଟେ, ନଚେତ୍ ନୂତନ ଭାବରେ ପ୍ରକାଶିତ ବିଷୟବସ୍ତୁ ତୁରନ୍ତ ପ୍ରବେଶ ହୋଇପାରିବ ନାହିଁ |
ୱେବସାଇଟ୍ ପ୍ରକାଶ କରନ୍ତୁ |
ୱେବସାଇଟ୍ ଯେକ anywhere ଣସି ସ୍ଥାନରେ ନିୟୋଜିତ ହୋଇପାରିବ github page ଏବଂ cloudflare page ଭଲ ପସନ୍ଦ!
କାରଣ ୱେବସାଇଟ୍ ଗୋଟିଏ ପୃଷ୍ଠା ପ୍ରୟୋଗ ସ୍ଥାପତ୍ୟ ବ୍ୟବହାର କରେ, URL ପଥଗୁଡ଼ିକୁ ପୁନ r ଲିଖନ କରିବାକୁ ମନେରଖ, ଯାହା .
ରୁ index.html
ଧାରଣ କରେ ନାହିଁ |
ୱେବସାଇଟ୍ ଏଣ୍ଟ୍ରି ପେଜ୍ କେବଳ ଥରେ ନିୟୋଜିତ ହେବା ଆବଶ୍ୟକ, ଏବଂ ପରବର୍ତ୍ତୀ ବିଷୟବସ୍ତୁ ଅଦ୍ୟତନ ପାଇଁ ୱେବସାଇଟ୍ ଏଣ୍ଟ୍ରି ପେଜ୍ ପୁନ ep ନିୟୋଜନ କରିବାର କ is ଣସି ଆବଶ୍ୟକତା ନାହିଁ |
Github ପୃଷ୍ଠାରେ ନିୟୋଜିତ କରନ୍ତୁ |
ଏକ ସଂସ୍ଥା ସୃଷ୍ଟି କରିବାକୁ ପ୍ରଥମେ ଏଠାରେ କ୍ଲିକ୍ github i18n-demo
ତାପରେ ଏହି ସଂସ୍ଥା ଅଧୀନରେ ଗୋଦାମ i18n-demo.github.io
ସୃଷ୍ଟି କରନ୍ତୁ (ଦୟାକରି ଆପଣ ସୃଷ୍ଟି କରିଥିବା ସଂସ୍ଥାର ନାମ ସହିତ i18n-demo
ବଦଳାନ୍ତୁ):
ପୂର୍ବ ଆର୍ଟିକିଲରେ ବିଷୟବସ୍ତୁ ପ୍ରକାଶନ କରିବାବେଳେ, out/main/htm
ସୃଷ୍ଟି ହୋଇଛି ଦୟାକରି ଏହି ଡିରେକ୍ଟୋରୀକୁ ପ୍ରବେଶ କରନ୍ତୁ ଏବଂ ଚଲାନ୍ତୁ :
ln -s index.html 404.html
କାରଣ github page
URL ପଥ ପୁନ r ଲିଖନକୁ ସମର୍ଥନ କରେ ନାହିଁ, ଏହା ବଦଳରେ 404.html
ବ୍ୟବହୃତ ହୁଏ |
ତାପରେ htm
ଡିରେକ୍ଟୋରୀରେ ନିମ୍ନଲିଖିତ ନିର୍ଦ୍ଦେଶକୁ ଚଲାନ୍ତୁ ( i18n-demo/i18n-demo.github.io.git
ନିଜ ଗୋଦାମ ଠିକଣା ସହିତ ବଦଳାଇବାକୁ ମନେରଖ) :
git init
git branch -M main
git remote add origin [email protected]:i18n-demo/i18n-demo.github.io.git
git push -u origin main -f
କୋଡ୍ ଦବାଇବା ପରେ, ଆପଣ ଏହାକୁ ପ୍ରବେଶ କରିବା ପୂର୍ବରୁ ସଫଳତାର ସହିତ ଚାଲିବା ପାଇଁ github page
ର ନିୟୋଜନକୁ ଅପେକ୍ଷା କରନ୍ତୁ (ନିମ୍ନରେ ଦେଖାଯାଇଥିବା ପରି) |
ଡେମୋ ପୃଷ୍ଠା ପାଇଁ ଦୟାକରି ଦେଖନ୍ତୁ:
https://i18n-demo.github.io
କ୍ଲାଉଡ୍ ଫ୍ଲାର୍ ପୃଷ୍ଠାରେ ନିୟୋଜିତ କରନ୍ତୁ |
github page
ସହିତ ତୁଳନା cloudflare page ଏହା ପଥ ପୁନ r ଲିଖନ ଯୋଗାଏ ଏବଂ ମଧ୍ୟପ୍ରଦେଶ ଚୀନ୍ ପାଇଁ ଅଧିକ ବନ୍ଧୁତ୍ୱପୂର୍ଣ୍ଣ ଏବଂ ଏହାକୁ ବ୍ୟବହାର କରିବାକୁ ପରାମର୍ଶ ଦିଆଯାଇଛି |
cloudflare page
ର ନିୟୋଜନ ସାଧାରଣତ above ଉପରୋକ୍ତ github page
ର ନିୟୋଜନ ଉପରେ ଆଧାରିତ |
ଏକ ପ୍ରୋଜେକ୍ଟ ସୃଷ୍ଟି କରନ୍ତୁ ଏବଂ ଉପରୋକ୍ତ i18n-demo.github.io
ଗୋଦାମକୁ ବାନ୍ଧନ୍ତୁ |
ପ୍ରକ୍ରିୟା ନିମ୍ନ ଚିତ୍ରରେ ଦର୍ଶାଯାଇଛି:
ସଂଗଠନ i18n-demo
କୁ ପ୍ରବେଶ କରିବାକୁ ଦୟାକରି Add Account
କ୍ଲିକ୍ କରନ୍ତୁ |
ଯଦି ଆପଣ ଅନ୍ୟ ସଂସ୍ଥାର ଗୋଦାମକୁ ବାନ୍ଧି ରଖିଛନ୍ତି, ନୂତନ ସଂସ୍ଥା ପ୍ରଦର୍ଶିତ ହେବା ପୂର୍ବରୁ ଆପଣଙ୍କୁ ଦୁଇଥର ଅନୁମତି ଦେବାକୁ Add Account
କ୍ଲିକ୍ କରିବାକୁ ପଡିପାରେ |
ପରବର୍ତ୍ତୀ ସମୟରେ, ଗୋଦାମ i18n-demo.github.io
ଚୟନ କରନ୍ତୁ, ତାପରେ Begin setup
କ୍ଲିକ୍ କରନ୍ତୁ ଏବଂ ପରବର୍ତ୍ତୀ ପଦକ୍ଷେପଗୁଡ଼ିକ ପାଇଁ ଡିଫଲ୍ଟ ମୂଲ୍ୟ ବ୍ୟବହାର କରନ୍ତୁ |
ପ୍ରଥମ ଥର ପାଇଁ ବାନ୍ଧିବା ପରେ, ଆପଣ ଏହାକୁ ପ୍ରବେଶ କରିବା ପୂର୍ବରୁ ଆପଣଙ୍କୁ କିଛି ମିନିଟ୍ ଅପେକ୍ଷା କରିବାକୁ ପଡିବ |
ନିୟୋଜନ ପରେ, ଆପଣ ଏକ କଷ୍ଟମ୍ ଡୋମେନ୍ ନାମ ବାନ୍ଧିପାରିବେ |
କଷ୍ଟମ୍ ଡୋମେନ୍ ନାମକୁ ବାନ୍ଧିବା ପରେ, ଦୟାକରି ଡୋମେନ୍ ନାମକୁ ଯାଆନ୍ତୁ, ଏକକ ପୃଷ୍ଠା ପ୍ରୟୋଗର ପଥ ପୁନ r ଲିଖନକୁ ବିନ୍ୟାସ କରିବାକୁ, ନିମ୍ନରେ ଦେଖାଯାଇଥିବା ପରି:
ଉପରୋକ୍ତ ଚିତ୍ରରେ ଥିବା ନିୟମଗୁଡ଼ିକ ନିମ୍ନଲିଖିତ ଅଟେ, ଦୟାକରି ନିମ୍ନରେ ଥିବା ପ୍ରଥମ ଧାଡିରେ i18n.site
ଆପଣ ବାନ୍ଧୁଥିବା ଡୋମେନ୍ ନାମ ସହିତ ବଦଳାନ୍ତୁ |
(http.host in {"i18n.site"}) and not (
substring(http.request.uri.path,-3) in {".js" ".gz"} or
substring(http.request.uri.path,-4) in {".htm" ".rss" ".css" ".svg" ".ico" ".png" ".xml" ".txt"} or
substring(http.request.uri.path,-5) in {".html" ".avif" ".json"} or
ends_with(http.request.uri.path,".webmanifest")
)
ଏହା ସହିତ, ଦୟାକରି ନିମ୍ନରେ ଦେଖାଯାଇଥିବା ପରି କ୍ୟାଚ୍ ନିୟମକୁ ବିନ୍ୟାସ କରନ୍ତୁ, ଏବଂ କ୍ୟାଚ୍ ଅବଧି ଏକ ମାସ ସେଟ୍ କରନ୍ତୁ |
ଦୟାକରି ଉପରୋକ୍ତ ଚିତ୍ରର ଦ୍ୱିତୀୟ ସୋପାନରେ ଡୋମେନ୍ ନାମକୁ ତୁମେ ବାନ୍ଧୁଥିବା ଡୋମେନ୍ ନାମକୁ ପରିବର୍ତ୍ତନ କର |
ଚୀନ୍ ମଧ୍ୟପ୍ରଦେଶରେ ୱେବସାଇଟ୍ ନିୟୋଜନକୁ ଅପ୍ଟିମାଇଜ୍ କରିବା |
ଯଦି ଆପଣ ମଧ୍ୟପ୍ରଦେଶ ଚାଇନାର ନେଟୱାର୍କ ପରିବେଶରେ ଉନ୍ନତମାନର କାର୍ଯ୍ୟଦକ୍ଷତା ହାସଲ କରିବାକୁ ଚାହୁଁଛନ୍ତି, ଦୟାକରି ପ୍ରଥମେ ଏକ ଡୋମେନ୍ ନାମ ପଞ୍ଜିକରଣ କରନ୍ତୁ |
ତା’ପରେ, ମଧ୍ୟପ୍ରଦେଶ + କ୍ଲାଉଡ୍ ବିକ୍ରେତାମାନଙ୍କର ଅବଜେକ୍ଟ ଷ୍ଟୋରେଜ୍ ବ୍ୟବହାର କରନ୍ତୁ CDN
ନିମ୍ନଲିଖିତ ବିଷୟବସ୍ତୁକୁ ନିୟୋଜିତ କରନ୍ତୁ out/main/htm
ଏକକ ପୃଷ୍ଠା ପ୍ରୟୋଗଗୁଡ଼ିକ ସହିତ ଖାପ ଖୁଆଇବା ପାଇଁ ଆପଣ ଧାର ଗଣନାକୁ ବ୍ୟବହାର କରିପାରିବେ | ଉଦାହରଣ ସ୍ୱରୂପ, Baidu ସ୍ମାର୍ଟ କ୍ଲାଉଡ୍ CDN
ଏହିପରି ବିନ୍ୟାସ ହୋଇପାରିବ |
const uri = r.uri, p = uri.lastIndexOf(".");
if (
p < 0 ||
!"|js|css|htm|html|md|avif|json|ico|xml|rss|gz|mp4|png|svg|txt|webmanifest|".includes(
"|" + uri.slice(p + 1) + "|",
)
) {
const ua = r.headersIn["User-Agent"].toLowerCase()
if (/facebookexternalhit|slurp|bot|spider|curl/.test(ua)) {
r.return(
302,
(/baidu|yisou|sogou|360|byte/.test(ua) ? "/zh" : "/en") + r.uri + ".htm",
)
} else {
r.uri = "/index.html"
}
}
r.respHeader(() => {
const t = [], out = r.headersOut;
["Content-MD5", "Age", "Expires", "Last-Modified"].forEach(
i => delete out[i]
)
r.rawHeadersOut.forEach(i => {
const key = i[0].toLowerCase()
if (key.startsWith("x-") || key.startsWith("ohc-")) {
delete out[key]
}
})
out["Cache-Control"] = "max-age=" + 9e5
// ରେସପନ୍ସ ହେଡର୍ ଗୁଡିକ ଡିବଗ୍ ଆଉଟପୁଟ୍ ପାଇଁ ସେଟ୍ ହୋଇପାରିବ, ଯେପରିକି out.XXX = 'MSG';
})
କାରଣ ରେକର୍ଡ MX
ଏବଂ ରେକର୍ଡ CNAME
ସହଭାଗୀ ହୋଇପାରିବ ନାହିଁ, ଯଦି ଆପଣ ଏକ ସମୟରେ ଡୋମେନ୍ ନାମ ଇମେଲ ଗ୍ରହଣ କରିବାକୁ ଚାହାଁନ୍ତି, ତେବେ ଆପଣଙ୍କୁ ସ୍କ୍ରିପ୍ଟ CNAME
ସହିତ ରେକର୍ଡ A
ରେ ସହଯୋଗ କରିବାକୁ ପଡିବ cname_flatten
ଏଥିସହ, ମଧ୍ୟପ୍ରଦେଶର ଚାଇନାର କ୍ଲାଉଡ୍ ବିକ୍ରେତାଙ୍କ ବିଦେଶୀ ଟ୍ରାଫିକ୍ ଚାର୍ଜ ଅପେକ୍ଷାକୃତ ମହଙ୍ଗା, ଯଦି ଆପଣ ଖର୍ଚ୍ଚକୁ ଅପ୍ଟିମାଇଜ୍ କରିବାକୁ ଚାହାଁନ୍ତି, ତେବେ ଆପଣ DNS କ୍ଲାଉଡ୍ ର ମାଗଣା ଭ ograph ଗୋଳିକ ରିଜୋଲ୍ୟୁସନ୍ ଏବଂ Cloudflare for SaaS ର କଷ୍ଟମ୍ ଡୋମେନ୍ ନାମ (ନିମ୍ନରେ ଦେଖାଯାଇଥିବା ପରି) ବ୍ୟବହାର କରିପାରିବେ | ଟ୍ରାଫିକ୍ ଡାଇଭର୍ସନ - ମଧ୍ୟପ୍ରଦେଶ ଚାଇନା Baidu Cloud CDN
ରେ ଟ୍ରାଫିକ୍ ରାଉଟିଙ୍ଗ୍, ଆନ୍ତର୍ଜାତୀୟ ଟ୍ରାଫିକ୍ cloudflare ଯାଏ |
ଏହି ନିୟୋଜନ ଅପ୍ଟିମାଇଜେସନ୍ ସମାଧାନଗୁଡିକ ଅଧିକ ଜଟିଳ ଏବଂ ଭବିଷ୍ୟତରେ ପୃଥକ ଅଧ୍ୟାୟରେ ଉପସ୍ଥାପିତ ହେବ |
ଜେନେରିକ୍ ଡୋମେନ୍ ନାମ ପୁନ ir ନିର୍ଦ୍ଦେଶ |
ଯଦି ତୁମେ ତୁମର ମୁଖ୍ୟ ୱେବସାଇଟ୍ ଭାବରେ ଏକ ୱେବସାଇଟ୍ ସୃଷ୍ଟି କରିବାକୁ i18n.site
ବ୍ୟବହାର କର, ତୁମେ ସାଧାରଣତ pan ପ୍ୟାନ୍-ଡୋମେନ୍ ପୁନ ir ନିର୍ଦ୍ଦେଶକୁ ବିନ୍ୟାସ କରିବାକୁ ପଡିବ, ଅର୍ଥାତ୍ *.xxx.com
( www.xxx.com
ଅନ୍ତର୍ଭୂକ୍ତ କରି) କୁ xxx.com
କୁ ପୁନ ir ନିର୍ଦ୍ଦେଶ କରିବାକୁ |
ଆଲିବାବା କ୍ଲାଉଡ୍ CDN
EdgeScript
( ଇଂରାଜୀ ଡକ୍ୟୁମେଣ୍ଟ୍ / ଚାଇନିଜ୍ ଡକ୍ୟୁମେଣ୍ଟ୍ ) ସାହାଯ୍ୟରେ ଏହି ଆବଶ୍ୟକତା ହାସଲ କରାଯାଇପାରିବ |
CDN କ୍ଲାଉଡ୍ ରେ ଡୋମେନ୍ ନାମ ଯୋଡନ୍ତୁ ଏବଂ ଆଲିବାବା କ୍ଲାଉଡ୍ CDN
ରେ ଡୋମେନ୍ ନାମ *.xxx.com
ରୁ CNAME
କୁ ସୂଚିତ କରନ୍ତୁ |
ଉଦାହରଣ ସ୍ୱରୂପ, ଉପର ଚିତ୍ରରେ *.i18n.site
ର ପ୍ୟାନ୍-ଡୋମେନ୍ ନାମ ପୁନ ir ନିର୍ଦ୍ଦେଶ ବିନ୍ୟାସ ନିମ୍ନଲିଖିତ ଅଟେ:
rewrite(concat('https://i18n.site',$uri), 'redirect',301)
Nginx ସହିତ ନିୟୋଜନ କରନ୍ତୁ |
ଦୟାକରି server
ର ଅନୁଚ୍ଛେଦରେ ନିମ୍ନଲିଖିତ ପରି ଏକ ବିନ୍ୟାସ ଯୋଡନ୍ତୁ nginx ଦୟାକରି /root/i18n/md/out/main/htm
ନିଜ out/main/htm
ପଥରେ ପରିବର୍ତ୍ତନ କରନ୍ତୁ:
location / {
root /root/i18n/md/out/main/htm;
add_header Cache-Control "max-age=9999999";
if ($uri !~* \.(avif|css|html|ico|js|json|png|svg|txt|webmanifest|xml)$) {
rewrite ^ /index.html last;
}
}
github action
କ୍ରମାଗତ ଏକୀକରଣ ଉପରେ ଆଧାରିତ |
ତୁମର github action
ବିନ୍ୟାସ କରିବାକୁ ଆପଣ ନିମ୍ନଲିଖିତକୁ ଅନୁସରଣ କରିପାରିବେ:
name: i18n.site
on:
workflow_dispatch:
push:
branches:
- main
- dist
jobs:
i18n:
permissions:
repository-projects: write
contents: write
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v4
- name: https://i18n.site
uses: i18n-site/github-action-i18n.site@main
with:
I18N_SITE_TOKEN: ${{ secrets.I18N_SITE_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
ଯେପରି ବିନ୍ୟାସନରେ ଦେଖାଯାଏ, ଶାଖା main
ଏବଂ ଶାଖା dist
କୁ ଠେଲିବାବେଳେ ଏହି କାର୍ଯ୍ୟ ପ୍ରବାହ ଟ୍ରିଗର ହୋଇଥାଏ |
ୱାର୍କଫ୍ଲୋ ଡକ୍ୟୁମେଣ୍ଟ ପ୍ରକାଶନ ପାଇଁ ଶାଖା ନାମ ସହିତ ଥିବା ବିନ୍ୟାସ ଫାଇଲକୁ ବ୍ୟବହାର କରିବ, ଏଠାରେ .i18n/htm/main.yml
ଏବଂ .i18n/htm/dist.yml
ଯଥାକ୍ରମେ ପ୍ରକାଶନ ସଂରଚନା ଭାବରେ ବ୍ୟବହୃତ ହେବ |
ଡକ୍ୟୁମେଣ୍ଟ୍ ରିଲିଜ୍ ପ୍ରକ୍ରିୟା ପାଇଁ ଆମେ ନିମ୍ନଲିଖିତ ସର୍ବୋତ୍ତମ ଅଭ୍ୟାସଗୁଡ଼ିକୁ ସୁପାରିଶ କରୁ:
ଯେତେବେଳେ ପରିବର୍ତ୍ତନଗୁଡିକ ଶାଖା main
କୁ ଠେଲି ହୋଇଯାଏ, ଡକ୍ୟୁମେଣ୍ଟ୍ ନିର୍ମାଣ ଏବଂ ପ୍ରିଭ୍ୟୁ ଷ୍ଟେସନରେ ନିୟୋଜିତ ହେବା ପାଇଁ ଟ୍ରିଗର ହୋଇଥାଏ (ପୂର୍ବାବଲୋକନ ଷ୍ଟେସନ୍ ଉପଲବ୍ଧ github page ) |
ପୂର୍ବାବଲୋକନ ସାଇଟରେ ଡକ୍ୟୁମେଣ୍ଟ ସଠିକ୍ ବୋଲି ନିଶ୍ଚିତ କରିବା ପରେ, କୋଡ୍ ମିଶ୍ରିତ ହୋଇ ଶାଖା dist
କୁ ଠେଲି ହେବ ଏବଂ ଅଫିସିଆଲ୍ ନିର୍ମାଣ ଏବଂ ନିୟୋଜନ ଅନ୍ଲାଇନ୍ରେ ଯିବ |
ଅବଶ୍ୟ, ଉପରୋକ୍ତ ପ୍ରକ୍ରିୟାକୁ କାର୍ଯ୍ୟକାରୀ କରିବା ପାଇଁ ଅଧିକ ବିନ୍ୟାସ ଲେଖିବା ଆବଶ୍ୟକ |
ୱାର୍କଫ୍ଲୋ ସ୍କ୍ରିପ୍ଟିଂ ପାଇଁ ଆପଣ ପ୍ରକୃତ ପ୍ରୋଜେକ୍ଟକୁ ରେଫର୍ କରିପାରିବେ github.com/fcdoc/doc
ବିନ୍ୟାସନରେ secrets.I18N_SITE_TOKEN
ଏବଂ secrets.NPM_TOKEN
ଆପଣଙ୍କୁ କୋଡ୍ ବେସରେ ଗୁପ୍ତ ଭେରିଏବଲ୍ ବିନ୍ୟାସ କରିବାକୁ ଆବଶ୍ୟକ କରେ |
I18N_SITE_TOKEN
କରନ୍ତୁ i18n.site/token
NPM_TOKEN
ହେଉଛି ସଂରଚନାରେ ପ୍ୟାକେଜ୍ npm
ର ପ୍ରକାଶନ ଟୋକନ୍ | npmjs.com କରନ୍ତୁ ଏବଂ ପ୍ରକାଶନ ଅନୁମତି ସହିତ ଏକ ଟୋକନ୍ ସୃଷ୍ଟି କରନ୍ତୁ (ନିମ୍ନରେ ଦେଖାଯାଇଥିବା ପରି) |
ଡିରେକ୍ଟୋରୀ ଗଠନ
public
ୱେବସାଇଟ୍ ର ଷ୍ଟାଟିକ୍ ଫାଇଲ୍, ଯେପରିକି favicon.ico
, robots.txt
, ଇତ୍ୟାଦି |
ଏଠାରେ ଥିବା ଆଇକନ୍ ଫାଇଲଗୁଡିକ ସୃଷ୍ଟି ହୋଇପାରିବ realfavicongenerator.net
.i18n
.i18n
ଡିରେକ୍ଟୋରୀ ଅଧୀନରେ i18n.site
ର ବିନ୍ୟାସ ଫାଇଲ, ଅନୁବାଦ କ୍ୟାଚ୍ ଇତ୍ୟାଦି ଅଛି | ବିବରଣୀ ପାଇଁ ପରବର୍ତ୍ତୀ ଅଧ୍ୟାୟ "ବିନ୍ୟାସ" ଦେଖନ୍ତୁ |
en
ଉତ୍ସ ଭାଷା ଡିରେକ୍ଟୋରୀ, .i18n/conf.yml
ବିନ୍ୟାସ ଫାଇଲରେ fromTo
ର en
ସହିତ ଅନୁରୂପ |
i18n:
fromTo:
en: zh
ଦୟାକରି ଅନୁବାଦର ସଂରଚନାକୁ ଅନୁସରଣ କରନ୍ତୁ i18