Skip to content

Instantly share code, notes, and snippets.

@yutakikuchi
Last active January 4, 2022 01:49
Show Gist options
  • Save yutakikuchi/51d0e129181f30568acae4e3d432996f to your computer and use it in GitHub Desktop.
Save yutakikuchi/51d0e129181f30568acae4e3d432996f to your computer and use it in GitHub Desktop.
Nginx Proxy conf for Notion URL(But Causes an error on the notion side)
server {
server_name <your access domain>; #please modify
listen 443;
ssl on;
ssl_certificate <your certificate>; #please modify
ssl_certificate_key <your certificate key>; #please modify
ssl_session_timeout 5m;
location / {
include /etc/nginx/mime.types;
proxy_pass <your notion url>; # please modify
proxy_set_header Host <your access domain>; #please modify
proxy_set_header Referer <your access domain>; #please modify
proxy_set_header User-Agent $http_user_agent;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Accept-Encoding "";
set $forwarded_accept_header $http_accept_encoding;
if ($request_uri ~* ".*\.js") {
set $forwarded_accept_header "";
gzip on;
}
if ($request_uri ~* ".*\.css") {
set $forwarded_accept_header "";
gzip on;
}
proxy_set_header Accept-Encoding $forwarded_accept_header;
proxy_set_header Accept-Language $http_accept_language;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
add_header Access-Control-Allow-Credentials "true";
add_header Access-Control-Allow-Origin "*";
add_header Access-Control-Allow-Headers "Content-Type";
add_header Access-Control-Allow-Methods "GET, HEAD, POST, PUT, OPTIONS";
proxy_hide_header "Content-Security-Policy";
proxy_hide_header "X-Content-Security-Policy";
}
location ~ ^/(?<file>.*?\.(jpg|jpeg|gif|png|css|js|ico|xml))$ {
include /etc/nginx/mime.types;
proxy_pass <your access domain>$file; #please modify
proxy_set_header Host <your access domain>; #please modfy
proxy_set_header Referer <your access domain>; #please modify
proxy_set_header User-Agent $http_user_agent;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Accept-Encoding "";
set $forwarded_accept_header $http_accept_encoding;
if ($request_uri ~* ".*\.js") {
set $forwarded_accept_header "";
gzip on;
}
if ($request_uri ~* ".*\.css") {
set $forwarded_accept_header "";
gzip on;
}
proxy_set_header Accept-Encoding $forwarded_accept_header;
proxy_set_header Accept-Language $http_accept_language;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
add_header Access-Control-Allow-Credentials "true";
add_header Access-Control-Allow-Origin "*";
add_header Access-Control-Allow-Headers "Content-Type";
add_header Access-Control-Allow-Methods "GET, HEAD, POST, PUT, OPTIONS";
proxy_hide_header "Content-Security-Policy";
proxy_hide_header "X-Content-Security-Policy";
}
}
@yutakikuchi
Copy link
Author

  • This is sample of nginx proxy for notion.
  • But this is not good case. I have an error on the notion.
  • Error message is Mismatch between origin and baseUrl (dev).

@yutakikuchi
Copy link
Author

server {

server_name <your access domain>; #please modify
listen       443;

ssl                  on;
ssl_certificate      <your certificate>;
ssl_certificate_key  <your certificate key>;

ssl_session_timeout  5m;

location ~ ^(.*)$ {
    rewrite ^(.*)$ <your notion url> redirect;  #please modify
}

}

@yutakikuchi
Copy link
Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment