我的網站有兩種語言,中文 英文 如果用pathinfo訪問的話應該是這樣 中文: http://www.com/index.php/product/category/a1/ 英文: http://www.com/en.php/product/category/a2/ 程式如果開重寫模式的話應該是這樣 http://www.com/cn/product/category/a1/ http://www.com/en/product/category/a2/ 在apache中我已經實現了,規則如下
RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^cn/(.*)$ index.php/ [L] RewriteRule ^en/(.*)$ en.php/ [L]
但是在nginx中我試兩種方法,如 方法1.
if (!-f $request_filename){ set $rule_0 1$rule_0; } if (!-d $request_filename){ set $rule_0 2$rule_0; } if ($rule_0 = "21"){ rewrite ^/cn/(.*)$ /index.php/ last; } rewrite ^/en/(.*)$ /en.php/ last;
方法2.
location /cn/ { if (!-e $request_filename){ rewrite ^/cn/(.*)$ /index.php/ last; } }
兩種方法都不能生效,求大神給個解決的方法呀
方法2你只寫了一條?寫下面兩條應該是沒問題的。