diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..78e7043 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +conf/includes/localhost.crt +conf/includes/localhost.key \ No newline at end of file diff --git a/conf/includes/BaGet.conf b/conf/includes/BaGet.conf index dd8900e..a51479d 100644 --- a/conf/includes/BaGet.conf +++ b/conf/includes/BaGet.conf @@ -1,11 +1,11 @@ -location / -{ - proxy_pass http://localhost:5555; +location / { proxy_http_version 1.1; - proxy_set_header Upgrade $http_upgrade; - proxy_set_header Connection keep-alive; - proxy_set_header Host $http_host; proxy_cache_bypass $http_upgrade; + proxy_pass http://localhost:5555; + proxy_set_header Host $http_host; + proxy_set_header Connection keep-alive; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header X-Forwarded-Proto https; } # sc create "Baget-5555" start= delayed-auto DisplayName="Baget-5555" binPath= "C:\Users\phares\AppData\Local\IFXApps\BaGet\src\BaGet\bin\Release\net6.0\win-x64\publish\BaGet.exe" obj= "infineon\phares" password= "" diff --git a/conf/includes/Gogs.conf b/conf/includes/Gogs.conf new file mode 100644 index 0000000..b1680ef --- /dev/null +++ b/conf/includes/Gogs.conf @@ -0,0 +1,8 @@ +location / { + proxy_hide_header Authorization; + if ($http_Authorization != "Basic asdf") { + return 401; + } + proxy_set_header Authorization "Basic asdf"; + proxy_pass http://localhost:3000; +} \ No newline at end of file diff --git a/conf/includes/code-server.conf b/conf/includes/code-server.conf new file mode 100644 index 0000000..42cd670 --- /dev/null +++ b/conf/includes/code-server.conf @@ -0,0 +1,25 @@ +server { + server_name phares3757.ddns.net; + location / { + proxy_pass http://localhost:8007/; + proxy_set_header Host $host; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection upgrade; + proxy_set_header Accept-Encoding gzip; + } + listen [::]:443 ssl ipv6only=on; # managed by Certbot + listen 443 ssl; # managed by Certbot + ssl_certificate /etc/letsencrypt/live/phares3757.ddns.net/fullchain.pem; # managed by Certbot + ssl_certificate_key /etc/letsencrypt/live/phares3757.ddns.net/privkey.pem; # managed by Certbot + include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot + ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot +} +server { + if ($host = phares3757.ddns.net) { + return 301 https://$host$request_uri; + } # managed by Certbot + listen 80; + listen [::]:80; + server_name phares3757.ddns.net; + return 404; # managed by Certbot +} \ No newline at end of file diff --git a/conf/includes/default.conf b/conf/includes/default.conf new file mode 100644 index 0000000..c6b4fe2 --- /dev/null +++ b/conf/includes/default.conf @@ -0,0 +1,8 @@ +server { + listen 8008 default_server; + listen [::]:8008 default_server; + ## Trun on /cgi-bin/ support to run CGI apps ## + include /etc/nginx/fcgiwrap.conf; + root /var/www/html; + server_name _; +} diff --git a/conf/includes/dex.conf b/conf/includes/dex.conf new file mode 100644 index 0000000..fca3a3c --- /dev/null +++ b/conf/includes/dex.conf @@ -0,0 +1,21 @@ +location ~* .(3gp|apng|avi|avif|bmp|css|cur|flv|gif|htm|html|ico|jfif|jpeg|jpg|js|mid|mov|mp3|mp4|mpeg|mpg|ogg|pdf|php|pjp|pjpeg|png|svg|tif|tiff|txt|wav|webp|wmf|wml|wmv|xml|xml)$ { + expires 1d; + index index.html index.htm; + # root /var/www/html/637998119172547651; + root "D://Tmp//phares//www"; +} +location / { + index index.html index.htm; + # root /var/www/html/637998119172547651; + root "D://Tmp//phares//www"; + # First attempt to serve request as file, then + autoindex on; + # Send the data in JSON + autoindex_format json; + addition_types application/json; + # Calling from SERVERNAME/autoindex/* + add_before_body /NGINdeX.io/header.html; + add_after_body /NGINdeX.io/footer.html; + # Need to tell that we are sending HTML + add_header Content-Type text/html; +} \ No newline at end of file diff --git a/conf/includes/ec-server.pass b/conf/includes/ec-server.pass new file mode 100644 index 0000000..9956456 --- /dev/null +++ b/conf/includes/ec-server.pass @@ -0,0 +1 @@ +nocert \ No newline at end of file diff --git a/conf/includes/github.conf b/conf/includes/github.conf new file mode 100644 index 0000000..24208a1 --- /dev/null +++ b/conf/includes/github.conf @@ -0,0 +1,4 @@ +location / { + root "D://www//github"; + index index.html index.htm; +} \ No newline at end of file diff --git a/conf/includes/json.conf b/conf/includes/json.conf index d801e61..d94abf5 100644 --- a/conf/includes/json.conf +++ b/conf/includes/json.conf @@ -1,24 +1,47 @@ -# location ~ /admin(.*)/$ { location ~* .(3gp|apng|avi|avif|bmp|css|cur|flv|gif|htm|html|ico|jfif|jpeg|jpg|js|mid|mov|mp3|mp4|mpeg|mpg|ogg|pdf|php|pjp|pjpeg|png|svg|tif|tiff|txt|wav|webp|wmf|wml|wmv|xml|xml)$ { expires 1d; index index.html index.htm; - # mklink /J "D:\Tmp\Phares\www\pictures" "D:\Documents\Pictures" - # mklink /J "D:\Tmp\Phares\www\NGINdeX.io" "L:\GitHub\NGINdeX.io" - root "D://Tmp//phares//www"; + root "C://SAM_2.1.10//Result"; } location / { index index.html index.htm; - # mklink /J "D:\Tmp\Phares\www\pictures" "D:\Documents\Pictures" - # mklink /J "D:\Tmp\Phares\www\NGINdeX.io" "L:\GitHub\NGINdeX.io" - root "D://Tmp//phares//www"; + # root /var/www/html/637998119172547651; + root "C://SAM_2.1.10//Result"; # First attempt to serve request as file, then autoindex on; # Send the data in JSON autoindex_format json; - addition_types application/json; + # addition_types application/json; # Calling from SERVERNAME/autoindex/* - add_before_body /NGINdeX.io/header.html; - add_after_body /NGINdeX.io/footer.html; + # add_before_body /NGINdeX.io/header.html; + # add_after_body /NGINdeX.io/footer.html; # Need to tell that we are sending HTML - add_header Content-Type text/html; + # add_header Content-Type text/html; + if ($request_method = 'OPTIONS') { + add_header 'Access-Control-Allow-Origin' '*'; + add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS'; + # + # Custom headers and headers various browsers *should* be OK with but aren't + # + add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range'; + # + # Tell client that this pre-flight info is valid for 20 days + # + add_header 'Access-Control-Max-Age' 1728000; + add_header 'Content-Type' 'text/plain; charset=utf-8'; + add_header 'Content-Length' 0; + return 204; + } + if ($request_method = 'POST') { + add_header 'Access-Control-Allow-Origin' '*' always; + add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS' always; + add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range' always; + add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range' always; + } + if ($request_method = 'GET') { + add_header 'Access-Control-Allow-Origin' '*' always; + add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS' always; + add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range' always; + add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range' always; + } } \ No newline at end of file diff --git a/conf/includes/localhost.conf b/conf/includes/localhost.conf new file mode 100644 index 0000000..7a838c2 --- /dev/null +++ b/conf/includes/localhost.conf @@ -0,0 +1,41 @@ +[req] +default_bits = 2048 +default_keyfile = localhost.key +distinguished_name = req_distinguished_name +req_extensions = req_ext +x509_extensions = v3_ca + +[req_distinguished_name] +countryName = Country Name (2 letter code) +countryName_default = US +stateOrProvinceName = State or Province Name (full name) +stateOrProvinceName_default = Arizona +localityName = Locality Name (eg, city) +localityName_default = Mesa +organizationName = Organization Name (eg, company) +organizationName_default = Infineon Technologies Americas Corp. +organizationalUnitName = organizationalunit +organizationalUnitName_default = Development +commonName = Common Name (e.g. server FQDN or YOUR name) +commonName_default = example.com +commonName_max = 64 + +[req_ext] +subjectAltName = @alt_names + +[v3_ca] +subjectAltName = @alt_names + +[alt_names] +DNS.1 = example.com +DNS.2 = localhost +DNS.3 = 127.0.0.1 + +# https://webscoot.io/blog/create-self-signed-certificate-ubuntu-windows-nginx/ +# cd "C:\Program Files\Git\usr\bin" +# openssl +# req -x509 -nodes -days 365 -newkey rsa:2048 -keyout L:\Git\NGINX-Conf\conf\includes\localhost.key -out L:\Git\NGINX-Conf\conf\includes\localhost.crt -config L:\Git\NGINX-Conf\conf\includes\localhost.conf +# openssl +# pkcs12 -in L:\git\NGINX-Conf\conf\includes\ec-server.pfx -nocerts -out L:\Git\NGINX-Conf\conf\includes\ec-server.key +# openssl +# pkcs12 -in L:\git\NGINX-Conf\conf\includes\ec-server.pfx -clcerts -nokeys -out L:\Git\NGINX-Conf\conf\includes\ec-server.crt diff --git a/conf/includes/www.conf b/conf/includes/www.conf index 83febd8..78ad9a0 100644 --- a/conf/includes/www.conf +++ b/conf/includes/www.conf @@ -1,4 +1,4 @@ location / { - root "D://www"; + root "C://SAM_2.1.10//Result"; index index.html index.htm; } \ No newline at end of file diff --git a/conf/includes/wwwroot.conf b/conf/includes/wwwroot.conf new file mode 100644 index 0000000..6633746 --- /dev/null +++ b/conf/includes/wwwroot.conf @@ -0,0 +1,4 @@ +location / { + root "C://SAM_2.1.10//Result"; + try_files $uri $uri/ /index.html =404; +} \ No newline at end of file diff --git a/conf/nginx.conf b/conf/nginx.conf index 257981d..25ce772 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -8,11 +8,22 @@ http { sendfile on; keepalive_timeout 65; server { - listen 5050; + listen 80; + # listen 443 ssl http2; + # listen [::]:443 ssl http2; server_name localhost; - include "includes/html.conf"; + # ssl_certificate "includes/localhost.crt"; + # ssl_certificate_key "includes/localhost.key"; + # ssl_certificate "includes/ec-server.cer"; + # ssl_certificate "includes/ec-server.crt"; + # ssl_certificate_key "includes/ec-server.key"; + # ssl_password_file "includes/ec-server.pass"; + # ssl_protocols TLSv1.2 TLSv1.1 TLSv1; + # include "includes/html.conf"; + include "includes/BaGet.conf"; error_page 500 502 503 504 /50x.html; include "includes/html-error.conf"; + # include "includes/github.conf"; } server { listen 4430; @@ -27,7 +38,7 @@ http { server { listen 5052; server_name localhost; - include "includes/json.conf"; + include "includes/dex.conf"; } server { listen 5053; @@ -35,26 +46,45 @@ http { include "includes/ProgramData.conf"; } server { - listen 8080; - server_name ~(oi-metrology-viewer-archive).mes.infineon.com; - location / { - include "includes/Archive.conf"; - } + listen 5054; + server_name localhost; + include "includes/json.conf"; } server { - listen 8080; - server_name ~(oi-metrology-viewer-prod).mes.infineon.com; - location / { - include "includes/Viewer.conf"; - } - } - server { - listen 8088; - server_name *.mes.infineon.com; - include "includes/EAF-Viewer.Server.conf"; + listen 5055; + server_name localhost; + include "includes/wwwroot.conf"; } } -# mklink /J "C:\Users\phares\AppData\Local\IFXApps\nginx-1.20.1\conf" "L:\Git\NGINX-Conf\conf" -# cd "C:\Users\ECMESEAF\AppData\Local\IFXApps\nginx-1.20.1" +# mkdir "L:\DevOps\Mesa_FI" +# cd "L:\DevOps\Mesa_FI" +# git clone https://tfs.intra.infineon.com/tfs/ManufacturingIT/Mesa_FI/_git/NGINX-Conf +# - +# rmdir /s "C:\Users\Administrator\AppData\Local\IFXApps\nginx-1.20.1\conf" +# mklink /J "C:\Users\Administrator\AppData\Local\IFXApps\nginx-1.20.1\conf" "L:\Git\NGINX-Conf\conf" +# - +# As administrator +# - +# cd "C:\Users\Administrator\AppData\Local\IFXApps\nssm-2.24\win64" +# nssm install "nginx" +# - +# C:\Users\Administrator\AppData\Local\IFXApps\nginx-1.20.1\nginx.exe +# C:\Users\Administrator\AppData\Local\IFXApps\nginx-1.20.1 +# - +# start nginx +# C:\Users\Administrator\AppData\Local\IFXApps\nginx-1.20.1\logs\service.out.log +# C:\Users\Administrator\AppData\Local\IFXApps\nginx-1.20.1\logs\service.error.log +# - +# mklink /J "D:\Tmp\Phares\www\pictures" "D:\Documents\Pictures" +# mklink /J "D:\Tmp\Phares\www\NGINdeX.io" "L:\Git\NGINdeX.io" +# mklink /J "D:\Tmp\Phares\www\pictures" "D:\Documents\Pictures" +# mklink /J "D:\Tmp\Phares\www\NGINdeX.io" "L:\DevOps\Mesa_FI\NGINdeX.io" +# - +# ln -s /etc/nginx/sites-available/json /etc/nginx/sites-enabled/ +# ln -s /srv/samba/share/637998119172547651 /var/www/html/637998119172547651 +# ln -s /var/www/html/NGINdeX.io /var/www/html/637998119172547651/NGINdeX.io +# ln -s /srv/git /var/www/html/637998119172547651/git +# - +# cd "C:\Users\phares\AppData\Local\IFXApps\nginx-1.20.1" # .\nginx -t -# .\nginx -s reload +# .\nginx -s reload \ No newline at end of file