1. 安裝Nginx
要安裝Nginx首先要將官方的項目源添加到系統中:
可以直接在/etc/apt/sources.list文件中添加, 也可以在/etc/apt/sources.list.d中新建一個nignx.list文件並將項目源添加進去.
## Replace $release with your corresponding Ubuntu release. deb http://nginx.org/packages/ubuntu/ $release nginx deb-src http://nginx.org/packages/ubuntu/ $release nginx
使用時要將上面的$release替換為你的系統發行版本, 比如我的LinuxMint是基於xenial的就可以這樣寫:
deb http://nginx.org/packages/ubuntu/ xenial nginx deb-src http://nginx.org/packages/ubuntu/ xenial nginx
添加完畢之后, 執行sudo apt-get update 更新一下項目源, 然后sudo apt-get install nginx就好了.
不過在安裝過程中, 終端提示安裝失敗, 比給出一段信息:
W: GPG error: http://nginx.org/packages/ubuntu xenial Release: The following signatures
couldn't be verified because the public key is not available: NO_PUBKEY AB23465345
提示沒有公鑰, 每個機器的公鑰可能不一樣, 不過不要緊, 只需要在終端執行下面的代碼便可以:
## Replace $key with the corresponding $key from your GPG error. sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys $key sudo apt-get update sudo apt-get install nginx
將上面的--recv-keys $key 中的$key替換成出現錯誤提示給出的公鑰就可以, 我的公鑰就是AB23456345. 執行完畢Nginx就按裝完畢啦. 在終端種輸入/usr/bin/nginx或者nginx就啟動Nginx了, 在瀏覽器中訪問localhost就可以看到Nginx的歡迎界面.
2. 安裝php7
在php.net官網下載php7.x.x 並解壓
tar zvxf php-x.x.x
進入到目錄並且執行源碼安裝
cd ../php-x.x.x ./configure --enable-fpm --with-mysql make sudo make install
如果出現Thanks for using PHP 就說明安裝完成.
但我的在安裝過程中出現了錯誤提示:
configure: error:. Xml2-config not found Please check your libxml2 installation.
沒有libxml2的支持, 解決方法: apt-get install libxml2-dev 安裝完成重復configuse並make & make install.
安裝好php之后還有一些配置操作:
cp php.ini-development /usr/local/php/lib/php.ini cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf cp sapi/fpm/php-fpm /usr/local/bin
有些博客里面說php-fpm.conf.default所在的目錄是/usr/local/etc/, 但我的在/usr/local/php/etc/ 這里, 百度了一下發現好多人問在/usr/local/etc里面找不到php-fpm.conf.default文件, 看來可能是安裝時configure不同導致的吧.
另外, 還有的人把php.ini目錄放在php的根目錄下, 而我放在根目錄下的lib文件里面. 區別可能是執行 ./configure的時候有沒有指定php.ini的位置: --with-config-file-path=/usr/local/php 如果configure的時候指定了config_file的路徑為php的根目錄, 就可以把php.ini放在根目錄, 否則默認為讀取根目錄下php.ini作為配置文件.
分配好php.ini的路徑之后, 修改里面的cgi.fix_pathinfo選項: 去掉注釋, 將原值1改為0.作用是當文件不存在時阻止Nginx將發送到php-fpm模塊, 避免惡意的腳本注入.
另外, 安裝好Nginx和php之后學要, 還要配置Nginx的配置文件nginx.conf增加對php文件的支持:
location / {
root html;
index index.php index.html index.htm;
}
其中root為你存放html和php文件的路徑, 例如我的為 /usr/share/nginx/html; index這一列種默認只有 index.html和index.htm, 手動添加index.php, 然后找到以下代碼
location ~* \.php$ {
root html; fastcgi_index index.php; fastcgi_pass 127.0.0.1:9000; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; }
去掉代碼的注釋, 並將root的目錄修改為自己網頁存放的路徑, 如果沒有root這一行可以手動創建.
完成所有的動作后可以啟動php-fpm: sudo /usr/local/bin/php-fpm即可,啟動完畢后可用fpm默認的9000端口檢驗一下, netstat -tln |grep 9000, 看到端口被LISTEN則開啟fpm成功.
啟動fpm后重啟一下nginx: sudo nginx reload, 然后在文件目錄中創建一個 只有phpinfo()函數的index.php, 在瀏覽器種輸入localhost就可以看到phpinfo(), 至此Nginx+PHP7的配置完成. 下一步就是安裝配置Mysql了.
3. 安裝mysql
sudo apt-get install mysql-server mysql-client
*安裝中間會提示設置root密碼, 設置安裝完成后, 鍵入mysql -u root -p 進入mysql的命令行模式
*mysql安裝無誤之后,輸入sudo apt-get install php-mysql 使得php支持mysql