1. 安裝nginx web 服務器php
sudo apt-get install nginxhtml
2. 啓動nginx,nginx的www目錄默認在/usr/share/nginx/html中nginx
sudo /etc/init.d/nginx startweb
3. 修改nginx的配置文件,發現沒有權限。先激活root帳號sql
pi@raspberrypi:~$ sudo passwd root
Enter new UNIX password: #輸入第一遍密碼
Retype new UNIX password: #輸入第二遍密碼
// 啓用 root 帳號登陸 瀏覽器
pi@raspberrypi:~$ sudo passwd --unlock root passwd: password expiry information changed.
輸入上面第一行代碼 第二行是提示錯誤的代碼bash
緣由是 新版本ssh默認關閉root登錄 你能夠修改一下ssh的配置文件服務器
pi@raspberrypi:~$ sudo nano /etc/ssh/sshd_config
搜索 PermitRootLogin without-passwordssh
修改 PermitRootLogin without-password 爲 PermitRootLogin yesphp-fpm
Ctrl + O 快捷鍵 保存。
使用屏幕下方的快捷鍵提示,能夠退出編輯。
執行完以後,用 sudo reboot 命令重啓,這樣就能夠解鎖root帳戶。
重啓後,註銷當前PI用戶登陸,並使用root帳號登陸。
4.用root帳號登錄後,用文件管理器找到並修改nginx的配置文件。/etc/nginx/sites-available/default
下面五行,去掉註釋# 符號
location ~ \.php$ {
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php; #若是沒有這一行,就不用管
include fastcgi_params; #若是沒有這同樣就不用管
}
注意這裏有個大坑。必定要注意server標記結尾括號要把上面的代碼包含進來。我開始沒有注意到,重啓服務就報錯。
"fastcgi_pass" directive is not allowed here in/etc/nginx/sites-enabled/default~:68.
大概是下面的這個樣子: server的結尾括號,還有 Location ~\.php 前面的#號。這都是坑啊。
server { location / { root /usr/share/nginx/www; #路徑地址可能不同,好比/var/www/html index index.php index.html index.htm; } location ~ \.php$ { fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; fastcgi_index index.php; include fastcgi_params; } }
5. 安裝 PHP 和 SQL
sudo apt-get install php5-fpm php5-sqlite php5
6.從新加載nginx的配置
sudo /etc/init.d/nginx reload
測試php
在樹莓派中生成一php文件
sudo vi /usr/share/nginx/www/index.php
<?php
echo 「welcome to php」
?>
存盤退出
瀏覽器中訪問這一頁,說明php也是OK的, 若是測試失敗,就停掉nginx,從新開啓
sudo /etc/init.d/nginx stop
sudo /etc/init.d/nginx start