Windows下使用Linux環境開發PHP專案!
之前一直都是Windows寫程式碼,為了更好的學習,把環境換成了Linux。通過VirtualBox的共享檔案功能把程式碼對映到Windows上。你就可以Windows下開發,Linux執行。Linux下能夠很方便的安裝各種專案中需要的擴充套件和外掛,簡直舒服至極。
需要有VirtualBox的linux虛擬機器
1.設定共享目錄
在固定分配下新增共享目錄。
2.安裝相關依賴包
//裝載相關依賴,執行下面的命令:
yum install -y gcc gcc-devel gcc-c++ gcc-c++-devel make kernel kernel-devel
安裝完後,重啟虛擬機器:
reboot
3.虛擬機器裝置選項安裝增強功能
找到安裝增強功能新增的光碟機的完整路徑名。在命令列輸入查詢:
ls -l /dev | grep cdrom
可以看到,安裝增強功能的光碟機在/dev目錄下的名字叫做:cdrom
4.將光碟機掛載到/mnt目錄下
然後在命令列執行:
//這會把光碟機掛載到/mnt目錄下。然後我們就可以通過訪問/mnt來訪問光碟機。
mount /dev/cdrom /mnt/
5.找到剛剛掛載的光碟機
檢視/mnt目錄的檔案。
6.執行安裝光碟機
./VBoxLinuxAdditions.run
(小插曲,沒有bzip2,沒有對應的命令的時候可以查查怎麼安裝)
//直接yum安裝 bzip2 yum install bzip2
7.再次執行 ./VBoxLinuxAdditions.run (時間會有點久)
如圖表示安裝完畢!
8.掛載共享資料夾
//為了能夠訪問PHP檔案,要給目錄許可權
格式:
mount -t vboxsf 共享資料夾名稱(在設定頁面設定的) -o rw,dmode=777,gid=GROUP_ID,uid=USER_ID 掛載的目錄
//檢視使用者的USER_ID和GROUP_ID
id -u username
id -g username
//都給root許可權掛載共享資料夾
mount -t vboxsf shares -o rw,dmode=777,gid=0,uid=0 /var/www/html
9.Windows共享目錄下建立一個檔案
內容為:
10.Linux掛載目錄檢視對應檔案
Windows下的檔案和Linux已經同步了。(驚不驚喜)
11.配置一下Nginx(Apache的自己配置哦)
server {
listen 80; # default_server;
server_name _;
root /var/www/html;
index index.php;
client_max_body_size 100M;
try_files $uri $uri/ @rewrite;
location @rewrite {
rewrite ^/(.*)$ /index.php?_url=/$1;
}
# serve static files directly
location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt)$ {
access_log off;
expires max;
}
location ~ \.php {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index /index.php;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}
12.訪問對應虛擬主機的ip地址
(大功將成)
13.虛擬機器重新啟動後,發現沒有許可權訪問了
14.排查發現掛載目錄不是root組了
15.重新掛載就可以訪問了
mount -t vboxsf shares -o rw,dmode=777,gid=0,uid=0 /var/www/html
16.設定開機自動掛載
總不能每次重啟都自己手動掛載吧,開機自動掛載你值得擁有!!
修改/etc/rc.d/rc.local檔案,將mount命令新增進rc.local檔案
17.給rc.local賦權
老司機常常飆車,沒想到在陰溝裡翻了車;/etc/rc.d/rc.local 是沒有執行許可權的;所有重啟後並不會執行。
//給rc.local 執行許可權
chmod +x /etc/rc.d/rc.local
提示:(要注意新增的命令是否正確,不然機器就起不來了)