我跑了一些自定義的PHP頁面的WordPress的網站。
如果url不例如延長(http://example.com/test
)結束了,我想Nginx的嘗試首先改寫爲http://example.com/test.php
,如果test.php
不存在,它改寫爲http://example.com/test/
。
我該如何做到這一點?
我跑了一些自定義的PHP頁面的WordPress的網站。
如果url不例如延長(http://example.com/test
)結束了,我想Nginx的嘗試首先改寫爲http://example.com/test.php
,如果test.php
不存在,它改寫爲http://example.com/test/
。
我該如何做到這一點?
使用try try_files:
http://wiki.nginx.org/HttpCoreModule#try_files
例如(未測試):
try_files $uri $uri/ /test.php
嘗試此,它會嘗試實際URI然後用PHP
try_files $uri $uri.php $uri/
請注意,這是很危險的! Try_files *字面意思*表示嘗試在磁盤上的文件。在這裏沒有位置重新評估,所以會發生的是nginx將以文本形式提供文字.php文件,而不會將其傳遞給PHP。只有try_files的最後一個參數纔會導致內部重定向以及位置重新評估。 –
使用該方法,'http:// example.com/test'只重寫爲'http:// example.com/test /'。如果該文件實際上是'test.php',它返回一個404 – waylaidwanderer