如何解决如何将 domain/first/second/ 之后的前 2 个字符串子目录作为 lang 和 page 参数传递到 nginx 中的 domain/index.php 文件css、js 文件除外
server {
server_name domain.com www.domain.com;
root /home/username/www/domain.com/public/;
access_log /home/username/www/domain.com/public/access.log;
error_log /home/username/www/domain.com/public/errorr.log;
index index.html index.htm index.PHP;
location ~ \.css {
add_header Content-Type text/css;
}
location ~ \.js {
add_header Content-Type application/x-javascript;
}
rewrite ^/(.*)/$ /index.PHP?lang=$1&page=$2 last;
location / {
try_files $uri $uri/ =404;
}
location ~ \.PHP$ {
include snippets/fastcgi-PHP.conf;
fastcgi_pass unix:/var/run/PHP/PHP7.4-fpm.sock;
}
listen 443 ssl; # managed by Certbot
include /etc/letsencrypt/options-ssl-Nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/domain.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/domain.com/privkey.pem; # managed by Certbot
}
server {
if ($host = www.domain.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
if ($host = domain.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80;
server_name domain.com www.domain.com;
return 404; # managed by Certbot
}
我想要做的是将域/第一个/第二个目录作为参数以 domain/index.PHP?lang=first&page=second 格式传递
第一个 $1 运行良好。 但是在 $ 之前添加 (.*)/ 之后,我打开了一个结构类似于 domain/en/page1 的页面 页面加载但是css,js加载不正确。
如何在重写时抛出异常?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。