一、Apache的項目,複製到Nginx環境中之後,只有首頁能訪問,其他頁都是404
出現這種情況主要是因爲Nginx的rewrite沒有,需要在nginx.conf中的server{}中加入
location / { // …..省略部分代碼
if (!-e $request_filename)
{
# #地址作爲將參數rewrite到index.php上。
rewrite ^/(.*)$ /index.php?s=$1;
# #若是子目錄則使用下面這句,將subdir改成目錄名稱即可。
rewrite ^/subdir/(.*)$ /subdir/index.php?s=$1;
}
}
}
然後重啓nginx服務(重要經常被忽略) , 問題解決
二、首先linux權限要有上傳的權限,否則文件不能上傳,如何修改權限這裏不做詳細說明。
windows下,php項目中的大小寫不區分,所以寫代碼時候可以不注意大小寫,windows下也能正常運行。
但是項目傳到Linux下,是嚴格區分大小寫的,所以經常會出現,模版不存在、方法不存等錯誤。
如果如下圖所示,出現模版不存在,方法不存在,就要考慮模版、方法等的大小寫問題,
主要修改地方
1、一般爲redirect('')中
2、模版中的方法函數名
3、如果使用了TP5.1的話,也可能是公共模版文件common/layout中的,大小寫與文件目錄不匹配。下面的兩張截圖中紅框中common大小寫要一致