今天突然想在本地搭建一個網站的服務器來調試自己的網站,然后又不想使用那種一鍵搞定的應用程序。那么就來自己一步一步來搭建吧。下面先來準備工作!
需要提前下載的工具軟件
1、php5.45,從PHP5.5開始,已不支持xp和win2003上運行了,因此win2003上只能安裝PHP5.4X的版本,使用PHP作為FastCGI與IIS,應該使用PHP的非線程安全(NTS)版本。
我經常用織夢程序做站,所以選擇php-5.4.45-nts-Win32-VC9-x86.zip,
2、MYSQL數據庫,我這里選擇了mysql-5.5.62-winx64。
3、phpMyAdmin數據庫管理軟件
接下來第一步就是安裝IIS了:
首先右鍵單擊右下角的WINDOWS徽標,點擊設置-應用程序-程序和功能(或者是直接搜索控制面板點擊程序和功能):
點擊:啟用或者關閉WINDOWS功能
選中internet information services,點開萬維網服務-應用程序開發功能,選中CGI,然后確定保存。
然后在管理工具里面就可以看到IIS管理器了。把這個管理器發送快捷式到圖片。方便后面操作。
打開桌面上的IIS管理器,點開網站,里面有一個默認站點,瀏覽
如果 出現這個畫面,就說明我們的IIS已經安裝好了。
接下來是第二步修改php的配置文件
在D盤根目錄新建一個名為php的文件夾,這個文件夾用來存放PHP配置文件、數據庫文件。然后在這個文件夾再新建一個名為php的文件夾,把我們剛才下載的PHP文件解壓到這個文件夾里面。把php文件里面的php.ini-development復制一份,然后把名稱修改為php.ini
用記事本打開這個php.ini,搜索extension_dir
把extension_dir前面分號去掉;把后面的ext修改為:D:\php\php\ext ,修改后如下。
搜索date.timezone,把它前面的分號去掉,把date.timezone =修改為:date.timezone = Asia/Shanghai
繼續搜索extension=php_ 把下列幾個擴展前面的分號去掉,下面幾個是必須要打開的。如果你運行程序提示缺少哪個擴展,直接修改PHP.INI文件就行了。
extension=php_curl.dll
extension=php_gd2.dll
extension=php_mysql.dll
extension=php_mbstring.dll
extension=php_mysqli.dll
extension=php_pdo_mysql.dll
保存。打開IIS管理器,點擊右邊的處理程序映射。
添加模塊映射
填寫如下圖所示:模塊選擇FastCgiModule
注意,當你選擇可執行文件時,看到的都是.dll文件
你要先選擇*.exe(如下圖),然后才會看到這個php-cgi.exe
添加php默認文檔
把默認站點暫停,或者刪除也行。
然后,我們來看看PHP有沒有配置成功。在D盤根目錄下新建一名為web文件夾,用來存放網站,如果你有多個網站需要調試,那就在這個web文件夾里面再建一個,這里我在WEB文件夾里新建一個test的文件夾,在這個文件夾里新建一個php文件,名稱隨意,我這里文件名為index.php,內容為
<?php
phpinfo();
?>
我們來新建一個網站。把物理路徑指向我們上一步新建test網站目錄。注意端口。如果你就一個站,那就用默認的80端口就行了。如果你有需要新建多個站,那就得修改端口。我這里用8001,如果再建第二個站的話,那就是8002、8003,以此類推。可建多個站。點擊確定。如果你搭建的環境應用于服務器上面,IP地址處應填寫你的服務器IP,端口處默認80,主機名處填寫你的域名。
下面激動人心的時刻就要到了,在新建的站點單擊右鍵,管理網站-瀏覽
出現這個畫面,說明我們的PHP運行環境配置成功。
上面步驟中,在添加處理程序映射模塊及默認首頁文件檔這兩個環節我這邊是全站添加的,就是說,添加后,后面的新建的站點都用這個配置,你也可以不用添加全站,新建一個站點就添加一個。
第三步 安裝數據庫軟件
直接雙擊安裝,到這一步后,選第二項,
把mysql server默認安裝在C盤的路徑修改為D:\PHP\
修改后如下圖
點擊server data files,把數據庫路徑也修改為D盤PHP文件夾里面。如下圖
編碼選擇UTF8
輸入數據庫密碼。
安裝結束
現在我們測試一下看看成功不。點擊開始,打開MySQL 5.5 Command Line Client
輸入數據庫密碼:出現這個畫面,就說明安裝成功了。
第四步。安裝數據庫管理工具phpmyadmin
把上面下載的phpmyadmin解壓到D盤PHP文件夾里面
打開IIS管理工具,新建phpmyadmin管理網站
訪問這個管理,輸入用戶名和密碼,
成功登錄
在新建網站填寫數據庫參數時,用戶名就填寫root.密碼填寫你安裝時的密碼,數據庫名稱你自定義。
以后,即使你重新安裝系統,你只需要把D:\php\MySQL\MySQL Server 5.5\data里面的數據庫數據備份一下,然后全新安裝mysql后,再把備份的data替換新的data目錄就行了。直接使用。
1.1 介紹
前面我們學習了GitLab環境的安裝部署方法,知道了Git這個版本控制軟件的作用和基本使用方法。今天福哥要帶著大家學習如何在Windows環境下使用Git客戶端去操作我們的項目文件,這個是每一個搞技術的人員都需要學習的知識,請大家打起精神來跟著福哥一起學習吧~
今天的內容有點多,大家可以收藏起來作為Git的使用手冊!
除了今天福哥教給大家的知識之外,更多的是需要大家在日常的項目開發當中熟練掌握Git的使用技巧!
1.2 環境
操作系統 | Windows 10 專業版 64位 |
Git客戶端軟件 | 2.41.0 |
Git服務器軟件 | gitlab/gitlab-ce:12.1.3-ce.0 |
Git服務器IP | 192.168.168.68 |
Git服務器端口 | 1022 |
2.1 下載
Git官網下載地址,我們下載標準安裝包的64位版本。
https://git-scm.com/download/win
現在這個鏈接改成github的了,下載速度真的太慢了!
2.2 安裝
啟動安裝包,UAC確認一下!
一路“next”安裝下去,全部選默認選項即可~
Git開始安裝了!
不用看發行信息,去掉“View Release Notes”選項,點擊“Finish”按鈕完成安裝!
3.1 建立目錄
打開資源管理器,選擇一個分區,在里面建立目錄tongfu.net\web。
3.2 打開Git Bash
在web目錄的空白處單機右鍵選擇“Open Git Bash here”打開Git的Bash終端窗口。后面的所有對git的操作都是在這里通過輸入命令行完成的哦~
3.3 SSH授權
先把安裝好的Git與前面搭建的GitLab配置起來,這樣在使用git操作gitlab的項目的時候就不用輸入密碼了!
在終端里輸入如下命令創建ed25519類型的密鑰!
ssh-keygen.exe -t ed25519 -b 4096
把公鑰內容復制出來。
cat /c/Users/tongfu/.ssh/id_ed25519.pub
把公鑰添加到gitlab的SSH密鑰里(這個上一節有講,不會的童鞋可以翻回去看看)。
添加好了~
現在有三個SSH密鑰了,一個是TFCentOS7x64服務器的,一個是TFCentOS7x64Node1服務器的,還有一個是福哥的Windows10的。
3.4 配置config
用來配置git相關參數,必須要設置的就是用戶名稱和用戶email。
git config --global user.email "git-client@tongfu.net"
git config --global user.name "git client"
3.5 克隆Clone
克隆就是把git服務器上面的一個項目的全部文件都復制一份到自己的電腦上面的操作.
現在福哥要把tfphp項目克隆一份到Windows10的桌面上,在Bash里面輸入命令克隆tfphp項目。
git clone ssh://git@192.168.168.68:1022/root/tfphp.git
3.6 拉取Pull/Fetch
拉取就是從git服務器上下載項目最新的文件覆蓋到本地項目里的操作。
無論是pull還是fetch都要在項目根目錄操作才行,所以福哥要先切換到tfphp項目根目錄下面。
cd tfphp/
ls
3.6.1 Pull
使用pull拉取最新的文件,如果遇到了沖突則會自動合并代碼,合并不了就會提示要求人工操作。
git pull
3.6.2 Fetch
使用fetch拉取最新的文件,如果遇到了沖突就會提示要求人工操作。
git fetch
3.7 添加Add
命令add用來將需要提交到項目里面的新增文件或者改動文件加入到待提交隊列,理論上git可以將任何文件存入項目里面。
福哥在tfphp項目的html目錄下面創建了一個htm文件,一個css文件和一個js文件。
使用add命令將css、js目錄和test.htm網頁添加到tfphp項目里。
git add html/css/
git add html/js/
git add html/test.htm
使用status命令查看有哪些文件有變化。
git status
3.8 提交Commit
命令commit用來將add命令添加的待提交隊列的內容提交到本地項目里。commit命令可以將一個階段的改動內容存成一個版本,這個版本就是項目的一個版本。
git commit -m "添加了test.htm網頁和相關資源"
3.9 日志Log
福哥剛剛提交了一個版本到項目tfphp,那么項目tfphp里面有多少版本呢?怎么查看呢?
git log -v
3.10 撤銷Revert
命令revert用來將某一次的提交所作的修改撤銷掉。如果撤銷會造成沖突則需要人工參與合并操作。
福哥使用revert命令把剛剛的提交給撤銷回來。撤銷操作需要commit ID,可以通過log命令查看。
git revert 4fb8ed332084d6787f3b8dc13f63240168b3eba0
撤銷操作還需要提供提交信息,這是默認的提交信息,可以不修改直接“:wq”保存退出。
保存退出后撤銷操作就完成了。
再次查看日志,可以看到剛剛所作的revert撤銷操作。
3.11 重置Reset
命令reset也是用來將某一次的提交所作的修改撤銷掉。
reset和revert的區別在于,如果目標版本是一個歷史版本,那么reset會把目標版本之后的全部版本清除掉,而revert則會保留這些版本信息。
為了測試這個,福哥就創建了幾個改動。
git add html/test.htm
git commit -m "add test.htm"
git add html/css/test.css
git commit -m "add test.css"
git add html/js/test.js
git commit -m "add test.js"
現在有了三個提交記錄,也就是三個版本。
福哥要reset到“add test.htm”這個版本,也就是說后面的兩個版本也會被撤銷掉,而且commit記錄也會被丟掉。
git reset 9562550c95b0819fb3536b2f0068588c9722d58e --hard
可以看到test.css和test.js都沒了,連目錄也沒有了。
相關的commit信息也沒了。
3.12 推送Push
剛剛的所有改動都只是在Windows10上面完成的,gitlab服務器上還是沒有變化的,要想同步到gitlab服務器上面就需要用到push命令了。
福哥現在使用push命令把剛剛所做的所有改動都推送到遠程的gitlab上面去。
git push
再去gitlab上面看看變化,可以發現html目錄有了“add test.htm”這個版本信息了。
3.13 分支Branch
分支是git非常重要的功能之一,每一個開發人員每天都離不開對項目分支的操作。
分支可以理解為項目的一次任務,每當項目有一次改動任務的時候都應該從主分支master上面切出來一個分支,然后在這個切出來的分支上面進行修改,修改完畢后再把這個分支和主分支master進行合并。這樣做可以最大限度地保證主分支master的穩定,還可以避免多人協同工作時候產生的沖突問題。
分支除了用來協同工作之外,也可以作為一個支線版本來使用。比如我們的某個客戶想要定制一些功能,這些功能不方便合并到主分支master上面,這個時候就可以為客戶單獨開辟一個持久的分支,專門為這個客戶進行升級。
分支還可以用來實現持續集成,就是說可以設計一個流水線,當某個分支被合并后就自動觸發構建任務,自動重新部署遠程服務。
3.13.1 查看分支
查看有哪些分支,當前處在哪個分支下。
git branch
3.13.2 創建分支
因為當前是master分支,所以我們是基于master分支創建tfdev230927分支。
git branch tfdev230927
git branch
3.13.3 切換分支
新分支有了但是當前還是master分支,切換到tfdev230927分支。
git switch tfdev230927
git branch
3.13.4 合并分支
先切換到master分支,然后將tfdev230927分支合并到master分支。
因為我們在tfdev230927分支什么都沒改,所以也沒有什么可合并的內容。
git switch master
git merge tfdev230927 --squash
3.13.5 刪除分支
任務做完了,現在可以刪除tfdev230927分支了。
刪除之前先切到其他分支上,當前是不能刪除的。
git switch master
git branch --delete tfdev230927
git branch
3.13.6 提交分支
我們創建的分支其實只是在本地,如果要保存到git服務器上,還需要使用push命令提交上去。
首次提交分支到git服務器需要--set-upstream參數,后面就不用了。
福哥先創建了一個新的分支tfdev230927b,再把它提交上去。
git branch tfdev230927b
git push --set-upstream origin tfdev230927b
去到gitlab上面可以看到剛剛創建的分支tfdev230927b。
3.13.7 刪除遠程分支
如何刪除git服務器上的分支?還是使用push命令。
福哥現在把剛剛提交到git服務器上的分支tfdev230927b刪除掉。
git push origin -d tfdev230927b
去到gitlab上看一下,tfdev230927b分支也沒有了。
注意:刪除遠程分支不代表本地分支也會被刪除!!!
3.14 標簽Tag
標簽顧名思義就是給項目打一個版本號,這個版本基于某一次的commit版本。大多數的情況下標簽是用來標志著項目的發行版本。通常用來完成持續集成,每次給項目打一個標簽就會觸發自動構建,自動完成遠程服務的重構。
3.14.1 查看標簽
現在還沒有任何標簽。
git tag
3.14.2 創建標簽
創建一個標簽v1.0.0。
git tag v1.0.0
git tag
3.14.3 刪除標簽
刪除這個標簽。
git tag --delete v1.0.0
git tag
3.14.4 提交標簽
提交標簽和提交分支語法類似。
git tag v1.0.1
git tag
git push origin v1.0.1
去到gitlab上面看一看,在標簽里面可以看到剛剛提交的v1.0.1標簽。
提交所有標簽可以使用這個命令。再參創建兩個標簽v1.0.2和v1.0.3,一起提交上去。
git tag v1.0.2
git tag v1.0.3
git tag
git push origin --tags
3.14.5 刪除遠程標簽
刪除遠程標簽和刪除遠程分支語法也差不多。
git push origin -d v1.0.1
去到gitlab上面看一下,標簽里面已經沒有v1.0.1這個標簽了。
注意:刪除遠程標簽不代表本地標簽也會被刪除!!!
3.15 分支和標簽重名
看到這里大家可能會想,既然分支和標簽推送到git服務器的語法是一樣的,那么如果分支和標簽有重名的情況的話,推送到git服務器的是分支還是標簽呢?
這個問題福哥幫大家試驗了一下,會有報錯的~
git branch v1.0.3
git branch
git push origin v1.0.3
git branch --delete v1.0.3
反過來也是不行的!
git tag tfdev230927b
git tag
git push origin tfdev230927b
git tag --delete tfdev230927b
今天我們學習了在Windows上安裝Git客戶端,已經使用Git客戶端操作項目文件的的各種操作的方法。其實除了這種命令行方式的Git客戶端之外,還有很多圖形化的Git客戶端軟件,使用圖形化的Git客戶端可以更加高效地管理我們的git項目,管理我們的服務。
后面福哥會給大家講解如何使用小烏龜Git(TortoiseGit)圖形化Git客戶端來管理我們的git項目,敬請期待~
https://m.tongfu.net/home/35/blog/514016.html