[英]Nginx: how do I rewrite a URL subdirectory to a query parameter?
我正在嘗試在運行Nginx的WordPress網站中重寫URL,以便將最后一個子目錄轉換為GET-parameter:
http:// mydomain / property / aid / 1234 /到http:// mydomain / property /?aid = 1234 /
我嘗試在WordPress中使用add_rewrite_rule
,但由於未創建新的$_GET
條目而無法使用。
然后,我嘗試了以下Nginx規則:
rewrite ^(/property/.*)/aid/(.*)$ /$1/?aid=$2 break;
這似乎根本沒有效果。
有什么建議么?
假設文檔根目錄為/www/yourproject/public
。 然后,PHP-FPM的配置可能如下所示:
rewrite "^/property/aid/([0-9]+)$" /property/?aid=$1 break;
location /property/ {
root /www/yourproject/public;
fastcgi_pass unix:/tmp/php-fpm-yourproject.sock;
fastcgi_index index.php;
include fastcgi_params;
}
在此配置中,請求由/www/yourproject/public/property/index.php
處理。
示例index.php
<?php
var_dump($_GET);
/property/aid/1234
樣本輸出
array(1) {
["aid"]=>
string(4) "1234"
}
例如,您可以使用proxy_pass
替換fastcgi_pass
和fastcgi_index
指令。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.