一.下載安裝Vmware Debian Linux或者Kali虛擬機.
這部分內容網上很多博主寫的十分詳細,在此不再贅述。我安裝后的Kali界面如下:
二.下載安裝nginx,php-fpm和php-mysql.
先用sudo su命令切換到root用戶,避免某些命令權限不夠。
1.下載nginx:
apt install nginx
我的版本:1.18.0-6.1,這一步下載成功會在/etc下創建nginx文件夾,nginx內容如下:
安裝完成后可用systemctl status nginx
命令查看nginx狀態。
這一步做完后就能利用nginx搭建簡單的服務器了:
首先要配置防火牆(打開80端口等),可用UFW防火牆來管理。
UFW下載:apt install ufw
.
配置防火牆命令:ufw allow 'Nginx Full'
.
然后開啟nginx服務器:systemctl start nginx
.
查看本機ip地址:ip addr show
.
在虛擬機的瀏覽器中輸入ip地址即可看到默認頁面:
(這個是我改過的頁面)。
你可以通過修改/var/www/index.html文件來修改上圖顯示的頁面。至此,我們搭建了一個簡單的web服務器,它可以顯示特定的靜態頁面。但這個服務器與我們日常瀏覽的網頁服務器相比有以下幾個缺點:
(1).外網(比如你的手機,本機瀏覽器)不能訪問此頁面;
(2).只能顯示特定頁面,不能根據我們的輸入返回不同頁面;
下面是解決方案:
針對(1)我們要用到內網穿透,我用的是natapp
進入頁面后完成注冊和實名驗證,然后點擊購買隧道-免費隧道-免費購買,完成后頁面下方會得到一個authtoken,用來在natapp客戶端驗證。然后下載natapp客戶端,更改natapp權限chmod 777 natapp
,啟動natapp./natapp -authtoken=xxxxx
.弄完之后第一個問題就解決了。
對於第二個問題,要用外部程序php-fpm來解析運行不同請求.下面是需下載的程序:
php-fpm:
apt install php-fpm
我的版本:2:7.4+76
php-mysql:
apt install php-mysql
我的版本:2:7.4+76
修改/etc/nginx/sites-available/default文件中一部分為:
(刪掉一些注釋然后添加一行:root /share/test,這個是存放php代碼的路徑,可以自行修改。)然后systemctl start nginx php7.4-fpm
啟動nginx和php-fpm。
以上做完后在url后加xxxx.php就會運行此路徑下對應名字的php代碼。以下是我的測試:
hello.php:
a!=4:
a==4: