亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

PHP+MySQL代碼部署在Linux(Ubuntu)上注意事項(xiàng)

asal 2016-11-11 14:58:24 468
abstrak:最近幫同學(xué)做一個(gè)網(wǎng)站,同學(xué)買(mǎi)的是阿里云服務(wù)器,Linux發(fā)行版是Ubuntu12.04。我在本地把程序?qū)懞?,都調(diào)試好了。然后他讓我自己發(fā)布和部署。之前在大學(xué)里上操作系統(tǒng)課程時(shí),也用過(guò)一段時(shí)間的Ubuntu,那個(gè)時(shí)候應(yīng)該是10.04。并且是虛擬機(jī),有界面的?,F(xiàn)在是服務(wù)器版本,只有命令行,而且自己要使用終端模擬器鏈接。所以就搜索資料,看哪些工具好用,而已方便。找了一圈,發(fā)現(xiàn)下面2個(gè)工具結(jié)合起來(lái)蠻好的。

最近幫同學(xué)做一個(gè)網(wǎng)站,同學(xué)買(mǎi)的是阿里云服務(wù)器,Linux發(fā)行版是Ubuntu12.04。我在本地把程序?qū)懞茫颊{(diào)試好了。然后他讓我自己發(fā)布和部署。之前在大學(xué)里上操作系統(tǒng)課程時(shí),也用過(guò)一段時(shí)間的Ubuntu,那個(gè)時(shí)候應(yīng)該是10.04。并且是虛擬機(jī),有界面的?,F(xiàn)在是服務(wù)器版本,只有命令行,而且自己要使用終端模擬器鏈接。

所以就搜索資料,看哪些工具好用,而已方便。找了一圈,發(fā)現(xiàn)下面2個(gè)工具結(jié)合起來(lái)蠻好的。文件上傳和權(quán)限改變工具:WinSCP,另外一個(gè)就是命令行終端模擬器:Xshell。這2個(gè)工具順利幫我解決了這次在Linux上發(fā)布和部署PHP代碼的問(wèn)題。軟件圖標(biāo)如下:

1.png

注意事項(xiàng)1:LAMP安裝過(guò)程了,除了順序安裝Apache,MySQL和PHP。還要安裝PHP對(duì)Apache對(duì)MySQL的支持。

同學(xué)告訴我,他已經(jīng)安裝了Apache,MySQL5.5和PHP。但是我的代碼放到/var/www目錄下,只要有調(diào)用MySQL的頁(yè)面都運(yùn)行不了,顯示500服務(wù)器內(nèi)部錯(cuò)誤。這個(gè)比較糾結(jié),然后一行一行的注釋?zhuān)l(fā)現(xiàn)下面這行代碼無(wú)法執(zhí)行:

$databaseConnection = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);

我就問(wèn)他,你確定裝好了PHP,MySQL5.5。他說(shuō)肯定呀!都是按照步驟安裝的。開(kāi)始我們都以為mysqli的擴(kuò)展沒(méi)有安裝,就在那里改php.ini里面extension。改了,然后重啟了幾次Apache2和MySQL,都不起作用。后來(lái)我記得在Windows上配置時(shí),要在PHP里面加載MySQL的dll。那在Linux系統(tǒng)中也需要的吧!然后就問(wèn)他這個(gè)裝了沒(méi)有,他說(shuō)應(yīng)該沒(méi)有。然后我們就搜索,發(fā)現(xiàn)確實(shí)需要裝。命令是:

sudo apt-get install libapache2-mod-auth-mysql
sudo apt-get install php5-mysql
#重啟Apache
sudo /etc/init.d/apache2 restart

注意事項(xiàng)2:MySQL在Linux上默認(rèn)對(duì)表名是大小寫(xiě)敏感的。 開(kāi)始以為大功告成,可以洗澡睡覺(jué)了。發(fā)現(xiàn)點(diǎn)了幾個(gè)頁(yè)面,又有頁(yè)面500錯(cuò)誤了。怪了,這下又是什么問(wèn)題。注釋和運(yùn)行了半天,發(fā)現(xiàn)有一條sql語(yǔ)句的程序代碼,運(yùn)行不了。SELECT * FROM USERS WHER id=?; 這是一條非常簡(jiǎn)單的sql語(yǔ)句呀!怎么跑不動(dòng)呢?開(kāi)始以為是bind_param(‘i’$user_id),這里綁定數(shù)據(jù)有問(wèn)題。后來(lái)想到之前,公司項(xiàng)目中,同事從連接Oracle數(shù)據(jù)庫(kù)代碼搬遷到連接MySQL數(shù)據(jù)庫(kù)時(shí),出現(xiàn)表名大小寫(xiě)有問(wèn)題。我突然想到是不是也有這個(gè)問(wèn)題,把USERS改成users就ok了。后面查找資料得出,MySQL在Linux默認(rèn)對(duì)表名是大小寫(xiě)敏感的。

總結(jié)如下:

1.Web開(kāi)發(fā)工程師,不管前端,后臺(tái)還是數(shù)據(jù)庫(kù),都需要了解一些Linux相關(guān)知識(shí)。因?yàn)閤86 linux服務(wù)器是未來(lái)的趨勢(shì),而且公司的現(xiàn)有系統(tǒng)都慢慢的往Linux上遷移。

2.遇到問(wèn)題,一方面除了在Google上搜索,有時(shí)在平時(shí)工作中積累的經(jīng)驗(yàn)也非常的寶貴。所以平時(shí)需要把一些錯(cuò)誤的經(jīng)驗(yàn),或者問(wèn)題的解決辦法記錄下來(lái),這樣可以提升解決問(wèn)題的能力。


Nota Keluaran

Penyertaan Popular