本帖最後由 zxc0166 於 2013-4-30 15:50 編輯
; u5 L6 e/ R+ C- z+ ^
( f! D2 a* s2 x, ~+ u {4 S以前自己VPS用的是LAMP(LINUX+Apache+mysql+php)沒在意,昨天在VPS上按論壇的教程裝上了LNMP(LINUX+nginx+mysql+php)後發現:, _5 B+ B7 ~/ _) g3 C. v
wordpres的Permalink Settings也就是固定鏈接設置成非默認鏈接格式後,在首頁點文章頁會出現404錯誤,不知道大家有沒遇到這個問題?
. p/ u$ ^" Q1 i. }5 K& T; z2 f$ U$ ^% u4 _( {% L. l
解決方法:
; S6 j1 L- `2 w在 /etc/nginx/sites-available 或 /etc/nginx/sites-enabled 文件夾下找到 所屬站點的 .conf 配置文件,在 location / { 下添加如下代碼: if (!-e $request_filename){
4 }- v8 g- W3 n5 C! y+ K! [ rewrite (.*) /index.php;
# X) S1 I1 V# k& [# A' J) k2 n, T }
! L, m, {4 x) o' e* X- O' J! A! j如下圖
+ r( V& Q9 ^4 y9 P$ l! I/ b修改後還需 /etc/init.d/nginx restart 重啟一下nginx,至此解決!
' w" \9 @2 C( Z# ~6 I r$ X( i. u% b: q6 q$ q5 K- [ g
問題原因:
4 H+ V- w& H# m1 d' w1 bwordpress的鏈接、轉向在Apache環境下是通過修改網站目錄下的 .htaccess 設置的, .htaccess 的設置是即時生效的。其實Apache環境下無論什麼程序都一樣,訪問每一個頁面都會調用一次 .htaccess ,查詢是否需要轉向,從這一點也能看出Apache的方便和佔用資源。9 T1 e5 p7 [' }" h3 z. K, v7 V
nginx出以高效、低資源佔用的設計理念,沒有採用 .htaccess 設置。所以只能在網站配置文件中加入nginx轉向規則的語句,並重新啟動加載轉向規則。
?9 c8 `7 U: o1 W% q+ T+ ~) {/ H/ ?- ~/ X G
! _! r. E% Z2 ]
) u: z( `* r% U1 t4 m: V5 O$ F" O$ m% Y* a D1 R/ q
|