一、Windows安裝cygwin
- 安裝包下載
自行搜索安裝包進行下載,目前官網無法打開。官網地址:http://www.cygwin.com/
- cygwin安裝詳細教程
1. 打開安裝包:setup-x86_64.exe
2. 點擊“下一頁”,選擇第一種方式后再點擊“下一頁”
3. 更改安裝目錄為D:\cygwin64后,點擊“下一頁”
4. 選擇組件包的存放位置,設置為D:\cygwin64\package,然后點擊“下一頁”
5. 選擇連接方式,選擇第二種方式后點擊“下一頁”
6. 由于網絡原因可能會出現以下情況,點擊“確定”即可
7. 在User URL中輸入http://mirrors.163.com/后點擊“Add”,并選擇它點擊“下一頁”
8. 進入下載包的頁面,如下圖所示。在Search中輸入需要下載的包并選擇版本,第三張圖片展示了所需要的組件,將這些組件選中后點擊“下一頁”,如果遺漏了某一個組件也不用卸載cygwin,只需要再次打開安裝包,按上述步驟執行到此處,進行搜索遺漏的組件進行選中,然后再次下載即可。
9. 最后選中創建快捷方式并點擊“完成”
- 配置環境變量
1.?在Windows系統下找到【編輯系統環境變量】,添加系統變量的路徑
2.?添加到該安裝文件夾中的bin文件夾下
- 檢驗Cygwin是否安裝成功
打開cygwin快捷方式(即命令行),輸入cygcheck -c cygwin
測試gcc、gdb是否安裝成功
- 安裝apt-cyg(安裝后能夠像Linux系統一樣使用apt-get install/remove命令安裝卸載軟件)()
1. 下載之后解壓文件
2. 打開Cygwin,輸入apt-cyg install/remove vim即可安裝/卸載
二、安裝PHP swoole擴展
swoole?下載地址(官網下載的文件試過后不能安裝,所以推薦下面):
https://gitee.com/swoole/swoole/tags
注意:5.0以上版本適用于PHP8
PHP7建議使用4.x系列的版本。
我這里下載的是swoole-v4.8.13
- 將下載的swoole-v4.8.13解押后(也可以直接通過sourcetree克隆不用解押),放到C:\cygwin64\home文件夾中
打開前面安裝的?Cygwin64?Terminal?命令窗口
進入到?D:\cygwin64\home\swoole位置
打開Cygwin64安裝程序,搜索php-devel后安裝
安裝完成后,執行phpize
編譯./configure
執行make
時間會比較長
如果出現以下錯誤:
則需要再打開Cygwin安裝程序重新安裝擴展libpcre2-devel、pcre2
再次輸入 make、make test、 make install 命令
手動打開 “/etc/php.ini” ,添加擴展 ” extension=swoole.so”
?
運行 php -m查看擴展是否開啟
測試運行:進入/home/swoole/examples/http目錄下,執行php server.php運行?“server.php”,在瀏覽器中輸入http://127.0.0.1:9501/,看到以下界面就表示Swoole已經運行成功了
?
三、配置crontab定時任務
- 安裝并配置crontab定時任務
1. 右鍵以管理員身份打開Cygwin,安裝cron服務,執行以下命令
cygrunsrv -I cron -p /usr/sbin/cron -a -D
2.?安裝完服務之后,需要運行以下命令啟動服務(此處執行可能會有錯誤cygrunsrv -S cron 報錯:error starting a service :QueryServiceStatus:Win32 error 1062.)
cygrunsrv -S cron
3.?執行cron-config 重新安裝配置crontab
please enter the password for user ‘administrator’: (此時輸入的密碼(使用系統賬戶的密碼)是看不到的,沒關系直接輸入;再reenter(重新輸入)
4. 按win+R打開運行頁面,輸入services.msc后進入服務
5. 找到Cron daemon雙擊打開屬性列表,選擇“自動”并且啟動該服務(這樣做是防止該服務沒有被啟動)
6.?配置定時任務的命令介紹
crontab -e #編輯任務
crontab -l #查看任務列表
crontab -r #刪除任務
cronevents #查看執行情況
7. 創建shell腳本vim /home/cron.sh
8. 使用crontab -e來創建定時任務
crontab設定時程表的格式說明:
執行crontab -e配置定時任務(每天凌晨1點執行home目錄中的cron.sh腳本):00 01 * * * sh /home/cron.sh
10.?使用crontab -l來查看,如下圖
11. 使用cronevents查看任務執行情況