我對Nignx和LEMP堆棧非常陌生,並且努力編寫乾淨的URL。
我想重寫:
https://example.com/search/something&1
到
https://example.com/search.php?query=something&page=1
我如何着手實現這一目標?Nginx的URL重寫
回答
rewrite ^/search/(.*)&(.*)$ /search.php?query=$1&page=$2
我想你向後想着它。您要重寫/search/something&1
=>/search.php?query=something&page=1
在你的代碼會產生看起來像/search/something&1
,然後nginx的將其改寫成與URL查詢參數,PHP能夠理解普通鏈接的鏈接。
它可以正常工作,但是我的所有外部資源如css&js文件無法加載。 – CodeWalker
@CodeWalker你需要一個單獨的位置塊,像這個位置〜* \。(?: css | js)$ {},它查找以.css或.js結尾的請求並正常發送它們,在重寫之前執行此操作,你可以使用break;以確保沒有更晚的規則得到處理。 –
希望這會幫助你。
([A-Za-z]+)
匹配所有小寫或大寫字母,一個或多個。
([\d]+)
匹配一位或一位以上的數字。
rewrite /search/([A-Za-z]+)&([\d]+) /search.php?query=$1&page=$2;
這將重定向只有$ REQUEST_URI這遵循這些模式,如
/search/something&12
/search/xxxyAAA&1212
/search/XXyyZZ&12
而且並不妨礙你CSS,JS執行請求重寫。
- 1. URL重寫Nginx
- 2. Nginx的URL重寫
- 3. Nginx重寫root url
- 4. 用NGINX重寫URL
- 5. Nginx URL重寫更改URL
- 6. Nginx的重寫URL ARGS
- 7. 重寫url中的Nginx proxy_pass?
- 8. nginx WordPress的URL重寫
- 9. 重寫nginx pushState-URL的
- 10. nginx的URL重寫規則
- 11. 重寫URL的Glype(nginx)
- 12. Nginx的URL重寫規則
- 13. Nginx的 - URL重寫規則
- 14. nginx的重寫URL子
- 15. nginx不重寫URL的opencart
- 16. wordpress,nginx和重寫url
- 17. 在nginX中重寫URL
- 18. Nginx重寫URL問題
- 19. nginx彈簧mvc url重寫
- 20. 重寫NGINX URL位置?
- 21. 如何寫nginx的主URL重寫
- 22. Nginx的重寫URL未能重定向
- 23. nginx的URL重寫(無重定向)
- 24. nginx proxy_pass與URL重寫 - 保存URL
- 25. 重寫url,但顯示原始URL + nginx
- 26. nginx用URL重寫部分url? mark
- 27. Nginx,ModX和友好URL(URL重寫)
- 28. 如何在nginx中寫入url重寫?
- 29. 簡單的nginx重寫乾淨的URL
- 30. Nginx的不重寫某些URL的
請檢查你的帖子。你的目標和重定向url都是一樣的 –
你想把這個'https:// example.com/search/something&1'改爲'https://example.com/search.php?query = something&page = 1'或者相反 –
@SahilGulati更新了我的問題:) – CodeWalker