2017-04-05 103 views
0

我有一個簡單的重寫規則,但我不能讓它工作(即使所有其他的答案在這裏SO)nginx的漂亮重寫一個參數

我希望用戶打開這個網址:

www.example.com/mypage/abcd 

和nginx的應該把它改寫爲:

www.example.com/myrealpage/index.html?link=abcd 

所以實際上我想我link參數很好地嵌入的URL。
這是一個幾乎適用規則:

location /mypage { 
    rewrite ^/mypage/(.*)$ /myrealpage/index.html?link=$1 last; 
} 

這似乎爲index.html文件工作,但是現在所有的腳本和CSS的進口被打破。因爲每個js/script.jscss/style.css都被重寫爲mypage/abcd/css/style.css,這顯然不存在。

FYI:
我顯然需要一個重寫mypagemyrealpage因爲我的服務器提供商自動生成已包含location /myrealpage這樣一個alias配置文件,我沒有看到的不僅僅是重命名它來添加自己的任何其他選項location規則。

如何
我可以改變那個url來重寫這個link參數嗎?它只是一個參數。

回答

0

您正在重寫每個路徑到您的/ mypage目錄。如果您將腳本保存在父目錄之外,那麼您將會很好。