ฉันพยายามเปลี่ยนเส้นทางของฉัน Laravel+vuejs+nuxtjs
โครงการจาก http ถึง https แต่เมื่อฉันเข้าไป http://example.com หรือ http://www.example.com ดาวน์โหลดไฟล์เปล่าแทน
ฉันทำอะไรไปแล้ว:
1- การแสดงความคิดเห็น แอปพลิเคชัน default_type/octet-stream
และเพิ่ม default_type ข้อความ/html
แทนใน nginx.conf
2-กำหนด ประเภท { } default_type "ข้อความ/ธรรมดา";
ใน ที่ตั้ง /{}
ของ example.com.conf
เปลี่ยนเส้นทาง 3-nginx ด้วยรหัสด้านล่าง
เซิร์ฟเวอร์{
ฟัง xx.xx.xx.xx:80;
server_name example.com www.example.com;
ส่งคืน 301 https://www.example.com$request_uri;
}
4- พยายามเปลี่ยนเส้นทางด้วยไฟล์ .php ด้วยไฟล์ example.com.conf ต่อไปนี้:
เซิร์ฟเวอร์ {
ฟัง 37.152.191.249:80;
server_name www.example.com ตัวอย่าง.com;
access_log /usr/local/apache/domlogs/example.com.bytes ไบต์;
access_log /usr/local/apache/domlogs/example.com.log รวมกัน;
error_log /usr/local/apache/domlogs/example.com.error.log ข้อผิดพลาด;
รูท /home/example/public_html/;
ดัชนี index.php;
ที่ตั้ง / {
ประเภท { } default_type "ข้อความ/ธรรมดา";
try_files $uri $uri/ /index.php?$query_string;
}
ตำแหน่ง ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
รวม fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
ปิด fastcgi_intercept_errors;
fastcgi_buffer_size 16k;
fastcgi_buffers 4 16k;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
}
ตำแหน่ง ~* "/\.(htaccess|htpasswd)$" {ปฏิเสธทั้งหมด ส่งคืน 404;}
ปิดการใช้งานลิงก์ if_not_owner จาก=/home/example/public_html;
}
index.php ในรหัส public_html :
$location = 'https://' $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
header('HTTP/1.1 301 ย้ายอย่างถาวร');
header('สถานที่: ' . $location);
ทางออก;
ไม่ได้ผลใด ๆ ข้างต้นและปัญหายังคงมีอยู่
+การกำหนดค่าปัจจุบัน:
รายงาน nginx -t :
nginx: ไฟล์การกำหนดค่า /etc/nginx/nginx.conf ไวยากรณ์ใช้ได้
nginx: การทดสอบไฟล์การกำหนดค่า /etc/nginx/nginx.conf สำเร็จ
ตัวอย่าง.com.ssl.conf :
เซิร์ฟเวอร์{
ฟัง xx.xx.xx.xx:443 http2 ssl;
server_name example.com;
ssl_certificate /etc/pki/tls/certs/example.com.bundle;
ssl_certificate_key /etc/pki/tls/private/example.com.key;
ssl_protocols TLSv1.2;
ssl_ciphers EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EE3CDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH+aRSA!RC4:EECDH:!RC4:!aNULL :!eN$
เปิด ssl_prefer_server_ciphers;
ssl_session_cache ที่ใช้ร่วมกัน: SSL:10m;
ssl_session_timeout 60m;
ส่งคืน 301 https://www.example.com$request_uri;
}
เซิร์ฟเวอร์ {
ฟัง xx.xx.xx.xx:443 http2 ssl;
server_name www.example.com;
access_log /usr/local/apache/domlogs/example.com.bytes ไบต์;
access_log /usr/local/apache/domlogs/example.com.log รวมกัน;
error_log /usr/local/apache/domlogs/example.com.error.log ข้อผิดพลาด;
ssl_certificate /etc/pki/tls/certs/example.com.bundle;
ssl_certificate_key /etc/pki/tls/private/example.com.key;
ssl_protocols TLSv1.2;
ssl_ciphers EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH+aRSA!RC4:EECDH:!RC4:!aNULL :!eN$
เปิด ssl_prefer_server_ciphers;
ssl_session_cache ที่ใช้ร่วมกัน: SSL:10m;
ssl_session_timeout 60m;
รูท /home/example/core/public/;
ดัชนี index.php;
ที่ตั้ง / {
proxy_set_header การเชื่อมต่อ 'อัปเกรด';
proxy_http_version 1.1;
proxy_pass https://xx.xx.xx.xx:3000$uri;
proxy_intercept_errors on;# เพื่อที่จะใช้คำสั่ง error_page จะต้องเปิดใช้งาน
error_page 404 = @php;
}
ตำแหน่ง @php {
try_files $uri $uri/ /index.php?$query_string;
}
ตำแหน่ง ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
รวม fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
ปิด fastcgi_intercept_errors;
fastcgi_buffer_size 16k;
fastcgi_buffers 4 16k;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
}
ตำแหน่ง ~* "/\.(htaccess|htpasswd)$" {ปฏิเสธทั้งหมด ส่งคืน 404;}
ปิดการใช้งานลิงก์ if_not_owner จาก=/home/example/public_html;
ที่ตั้ง /.well-known/acme-challenge {
default_type "ข้อความ/ธรรมดา";
นามแฝง /usr/local/apache/autossl_tmp/.well-known/acme-challenge;
}
สถานที่ /.well-known/pki-ตรวจสอบ {
default_type "ข้อความ/ธรรมดา";
นามแฝง /usr/local/apache/autossl_tmp/.well-known/acme-challenge;
}
}
example.com.conf ปัจจุบัน :
เซิร์ฟเวอร์{
ฟัง xx.xx.xx.xx:80;
server_name example.com www.example.com;
ส่งคืน 301 https://www.example.com$request_uri;
}
ฉันยังไม่ได้เพิ่มรายงาน nginx -T เนื่องจากมันแสดงไฟล์การกำหนดค่าที่ไม่เกี่ยวข้องจากเว็บไซต์อื่น
นอกจากนี้เซิร์ฟเวอร์ที่ใช้งานหลายไซต์และเวิร์ดเพรสก็ไม่มีปัญหาในการเปลี่ยนเส้นทางโดยใช้รหัสที่ให้ไว้ #3 เพื่อเปลี่ยนเส้นทาง แต่เมื่อมาถึง เดอะ ไซต์ที่ใช้ nuxtjs ฉันได้รับการดาวน์โหลดไฟล์เปล่าแทน
ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชมอย่างสูง