簡體   English   中英

Nginx:如何將URL子目錄重寫為查詢參數?

[英]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_passfastcgi_index指令。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM