樹莓派研究筆記(2)-- 安裝Nginx 服務器,PHP 和 SQLite


1. 安裝nginx web 服務器

sudo apt-get install nginx

2. 啟動nginx,nginx的www目錄默認在/usr/share/nginx/html中

sudo /etc/init.d/nginx start

3. 修改nginx的配置文件,發現沒有權限。先激活root賬號

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.

輸入上面第一行代碼 第二行是提示錯誤的代碼

原因是 新版本ssh默認關閉root登陸 你可以修改一下ssh的配置文件

pi@raspberrypi:~$ sudo nano /etc/ssh/sshd_config

搜索 PermitRootLogin without-password

修改 PermitRootLogin without-password 為 PermitRootLogin yes

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 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM