国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > 建站經驗 > 正文

在win7中搭建Linux+PHP 開發環境

2024-04-25 20:16:46
字體:
來源:轉載
供稿:網友

這篇文章會以一個概覽的形式介紹我的 PHP 開發環境,列出我使用的工具,但配置過程不會太詳細。有需要的朋友可以參考下。

我用了 3 年多的 Linux 桌面,很是不爽,主要是各個軟件的體驗不夠統一,太分裂,太多選擇讓人無從選擇。

而回到 Windows, 則更糟糕,使用 *nix 工具集變得非常折騰,部署 Web 環境也很麻煩,而且我的服務器都是 Linux 的,代碼里有些功能是不能運行在 Windows 上的。

因為我偶爾還打打游戲,一個月前,我還是選擇回到 Windows 桌面。

但我下面的這些軟件幾乎都是跨平臺的,如果你使用 Linux 桌面,也不會有什么影響的。

我的主機是 Windows 7 x64, 然后跑一個 Arch 的虛擬機,所有代碼的運行和調試都在虛擬機中進行。

Arch 虛擬機

Arch 安裝略折騰,但我喜歡它 KISS 的哲學,我用 VirtualBox, 分配 512MiB 甚至 256MiB 就夠用了。

網絡改成「橋接網卡」然后在路由器設置一個 MAC 綁定的固定 IP, 我給虛擬機的是 192.168.0.105, 而我主機的是 192.168.0.100.

需要裝的軟件包最核心的有:openssh, nginx, mariadb, php, xdebug.

至于其他一些:vim, mongodb, php-mongo, phpmyadmin 就看個人需要了。

直接在 VirtualBox 的虛擬機窗口上敲命令很不方便,我會裝一個叫 VirtuaWin 的虛擬桌面軟件,類似于 KDE 的 Workspace(工作區), 把 VirtualBox 的窗口丟到另一個桌面。

然后用 XShell 連 SSH 上去敲命令。

當然你還需要建一個非 root 賬戶來日常使用,我建了一個 jysperm.

然后你可以修改 /etc/php/php-fpm.conf:

user = jysperm

group = jysperm

這樣 PHP-FPM 的進程會以你的用戶來跑,讀寫文件不會遇到任何權限問題。

作為開發服務器,可能同時需要開發測試多個項目,每次都要去 Nginx 里面新建站點是很折騰的事情,下面的配置文件可以讓你一勞永逸:

  1. server { 
  2.     listen 80; 
  3.     server_name ~(?<dir>.*)/.ab/.jyprince/.me$; 
  4.     access_log /home/jysperm/nginx.access.log; 
  5.     error_log /home/jysperm/nginx.error.log; 
  6.  
  7.     index index.html index.php; 
  8.     autoindex on; 
  9.  
  10.     root /home/jysperm/$dir
  11.  
  12.     location / { 
  13.         try_files $uri $uri/ /index.php?$args
  14.     } 
  15.  
  16.     location ~ /.php$ { 
  17.         fastcgi_pass unix:/run/php-fpm/php-fpm.sock; 
  18.  
  19.         fastcgi_index index.php; 
  20.         include fastcgi_params; 
  21.     } 

*.ab.jyprince.me 這個域名被我解析到了 192.168.0.105, 這樣下來,只需訪問 test.ab.jyprince.me, 就相當于訪問位于 /home/jysperm/test 中的文件了,以后就不用再修改 Nginx 的配置文件了。

PHPStorm

我見過最好的 IDE 是 PHPStorm.

PHPStorm 的 Deployment 功能可以在你每次修改文件后自動部署到服務器,你只需建一個 SFTP 類型的服務器,并把 Arch 虛擬機的信息填上去,然后勾選 Automatic Upload 就好。

每一個項目都上傳到 /home/jysperm 下的一個文件夾。

然后訪問 項目名.ab.jysperm.me 就行了,一切都是自動的。

遠程調試

在 Arch 虛擬機中修改 /etc/php/conf.d/xdebug.ini:

  1. zend_extension=/usr/lib/php/modules/xdebug.so 
  2. xdebug.remote_enable=on 
  3. xdebug.idekey=jysperm 
  4. xdebug.remote_host=192.168.0.100 
  5. xdebug.remote_port=9000 

然后在 PHPStorm 中新建一個 PHP Remote Debug 即可。

需要調試時,先在 PHPStorm 中打開調試,設上斷點,然后讓請求帶上 XDEBUG_SESSION=jysperm 的 Cookie 即可。

調試頁面的時候,可以用 這個工具 生成書簽,點擊書簽就可以控制調試的開關了。

調試 RESTful API 的話我一般會用一個叫 Postman 的 Chrome 擴展,這個應用似乎沒有編輯 Cookie 的功能,這樣的話,在 HTTP Header 里加上一項 Cookie:XDEBUG_SESSION=jysperm 就行了。

其他推薦

Robomogo - 跨平臺的 Mongo GUI 客戶端

SourceTree - Windows 下的 Git GUI

Secure Shell - Chrome 中的 SSH

Clover - 讓 Windows 的資源管理器像 Chrome 一樣

FileZilla - 跨平臺的 FTP 客戶端

SmartGit - 跨平臺的 Git GUI

Sublime Text - 好用的跨平臺編輯器

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 沁水县| 浪卡子县| 嵩明县| 新宾| 方山县| 甘德县| 琼结县| 木兰县| 安西县| 沙坪坝区| 扎鲁特旗| 阜阳市| 勃利县| 盱眙县| 齐齐哈尔市| 邯郸县| 谢通门县| 洪湖市| 淮北市| 青川县| 德昌县| 梧州市| 山西省| 江达县| 甘泉县| 柳江县| 肇州县| 嘉祥县| 揭东县| 肇东市| 邯郸县| 怀仁县| 来宾市| 阳朔县| 鄂尔多斯市| 闻喜县| 黔西县| 双辽市| 利辛县| 永泰县| 花莲市|