LAMP
- window:WAMP(windows,apache,mysql,php)
- LAMP是 Linux,Apache,MySQL和PHP的縮寫,是我們提供 Web 服務的軟件基礎。
- 對於 Linux,你需要熟悉常用的操作命令,完成日常事務
- 對於 Apchae,你需要熟悉其配置,配置可運行的網站。
- 對於 MySQL,會常見查詢,會設計表。
- 對於 PHP,掌握基本的PHP語法,掌握 Zend Framework 框架。
- 安裝 LAMP 環境,可參考:Ubuntu 搭建 php 開發環境教程,把該教程中的 mariaDB 替換成 mysql,把 php7全部替換成php5即可。
Linux
公司程序開發統一使用 Ubuntu14.04 LTS 系統版本作為日常操作系統。
問題:為什么是 Linux 而不是 Windows?為什么選擇 Ubuntu?
- 我們已經上線的項目全部部署在 Linux(Ubuntu)上面的,直接在 Ubuntu 上面開發,可以減少兼容性問題,避免因為系統不同而產生的其他問題。
- Linux 下面有很多好用的程序,它們都很簡潔,可以直接從命令行調用。相比 windows 一步一步點擊,linux只需一行代碼就行。當你習慣這一點,就再也不會想去用 Windows 開發了。
- Linux 可以很方便地管理服務器。可以自己編寫腳本來控制服務器如何運行,定時運行任務。如果windows的話,你只能寄希望於微軟了,掌握微軟提供的管理軟件,自己不能修改,也不明白其原理。
Ubuntu 入門
- Linux 有很多版本,Ubuntu 是其中的一種,其他還有 Redhat,Debian,CentOS。
- 你需要下載 Ubuntu14.04 LTS 桌面版鏡像文件。
- 安裝 Ubuntu 系統,可參考:Ubantu14.04 安裝教程
- 安裝一些常用的程序,至少要有:
- Chrome 瀏覽器,php開發必備
- Lantern/hosts文件,用於翻牆訪問 Google
- 開發工具(phpstorm(激活),vscode,sublime,zend studio,git,vim)
Linux 常用命令
apt-get
軟件安裝/卸載apt-get install packagename
安裝軟件apt-get remove packagename
刪除軟件apt-get update/upgrade
更新源和軟件
ls
顯示當前目錄下的文件和目錄詳細信息cd
切換目錄vim filename
使用vi編輯器編輯文件tail
顯示文件末尾一段內容|
管道,把左邊程序的輸出作為右邊程序的輸入>
重定向,把輸出保存到文件中mysql -u root -p
登錄mysqlphp filename
運行.php文件program_name
命令行輸入程序名可直接運行程序,比如命令行輸入phpstorm
就打開了 phpstorm,其他程序同理。sudo su
獲得root權限df -h
查看目錄空間大小service apache2 restart
重啟 apache 服務ssh -l username ip
命令行連接服務器
Linux 技巧
- 以 . 開頭的文件為隱藏文件,
ls -a
可以顯示它。也可以在文件管理器設置“顯示隱藏文件”。 - 系統自帶的 gedit 編輯器很好用,支持代碼高亮,臨時用來編輯單個代碼文件很方便。
- 命令行中使用 vim 編輯器很方便。
Apache
主要掌握Apache的配置,可參考:Ubuntu 下 Apache 的配置教程
這個配置的意思是:在瀏覽器輸入自己設定的域名(比如:www.test.com)就訪問到本地的項目。
默認的 Apache 的項目目錄是 /var/www/html,而我們自己的項目通常在 /home/username/projectname,而且我們也要自己設定一個域名,總不能都用 localhost 吧。
此外實際網站部署時也要域名,所以就在本地先學會實踐之。
掌握 Apache 的配置文件的主要結構和內容,windows下的apache和Ubuntu下的apache配置文件是不同的,這點要注意。主要區別是:Ubuntu中配置文件默認分散到了各個文件中。
可參考:How To Configure the Apache Web Server on an Ubuntu or Debian VPS
MySQL
- MySQL 的安裝,前面 LAMP 安裝中已經安裝好了。
- 會使用 phpmyadmin 工具管理mysql數據庫(主要)。
- 掌握常用的 mysql 語句,可參考《MySQL必知必會》(下載)。該書簡單易懂,入門夠用了。
- 了解索引,不同的數據類型,並且應用到表設計中。
PHP
- 這是php工程師必須要會的技能
- 掌握 Zend Framework,我們會用一個小的 Demo 來引導你理解整個框架結構。
- 先完成 zend 官網上的教程:Zend Framework Quick Start,這個原版的教程有一些坑,為了快速入門也可以參考我翻譯的中文版:Zend Framework 1 - Quick Start
- 完成我們布置的一個 Demo 示例程序。
- Zend Framework
- php 框架都是相通的,zend 也不例外,它也是一個 MVC 架構的php框架。
- 目錄結構:/application php文件、/public 靜態文件
/application/controllers/ 控制器
/application/models/ 模型
/application/views/ 視圖
/application/library Zend 框架
/public 主要是一些css,js,引用的前端框架、庫文件 - 所有的http請求通過 index.php,然后傳遞到相應的 controllers,調用相應的服務並執行,產生結果,返回響應給用戶瀏覽器。