การกำหนดค่าปัจจุบันนี้ใกล้เคียงกับการทำงาน ปัญหาเดียวก็คือมันจะให้บริการไฟล์ php ของฉันเป็นไฟล์แบบคงที่ (แทนที่จะส่งพวกเขาออกไป apache2 ทำงานบนพอร์ต 81)
ฉันรู้ว่ามันผิดปกติกับบรรทัดlocation ~ .+(?<!\.php)
นี้ ฉันมีไวยากรณ์ lookahead เชิงลบผิดหรือไม่
server {
listen 80;
listen [::]:80;
root /var/www/example.com;
index index.php;
server_name example.com;
location ~ .+(?<!\.php) {
try_files $uri $uri @php;
}
location @php {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_pass http://127.0.0.1:81;
proxy_redirect http://127.0.0.1:81/ /;
proxy_read_timeout 60s;
}
location ~ /\.ht {
deny all;
}
}