183 wnmp環境搭建和laravel
Win10下搭建綠色版的WNMP的Laravel開發環境。
1.安裝Nginx
到Nginx官網下載最新穩定版 http://nginx.org/download/nginx-1.8.1.zip;
解壓到D:\Nginx下;
執行D:\Nginx\nginx.exe程式測試,開啟瀏覽器檢視http://127.0.0.1,看到下圖,則Nginx成功執行。
2.安裝PHP
到PHP官網下載最新的穩定版PHP http://windows.php.net/downloads/releases/php-5.6.8-Win32-VC11-x64.zip
解壓到D:\PHP-TS
在系統的環境變數裡新增值為D:\PHP-TS的PHP_HOME變數,並在PATH變數後面追加;%PHP_HOME%後重啟計算機。
重啟之後在cmd命令提示行介面輸入php -v,如果出現以下資訊,則表示PHP已安裝成功。
3.配置Nginx + PHP
修改配置檔案,將約第65行“# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000”之後的一段配置的#號去掉,修改為如下配置
- location ~ \.php$ {
- root html;
- fastcgi_pass 127.0.0.1:9000;
-
fastcgi_index index.php;
- fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
- include fastcgi_params;
- }
注意fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;一行的變化。
這樣配置可使Nginx將PHP請求交給運行於9000埠PHP的fastcgi處理
4.測試Nginx+PHP
-
D:/PHP-TS/php-cgi.exe -b 9000 -c D:/PHP-TS/php.ini
- cd Nginx
- D:/Nginx/nginx.exe -c D:/Nginx/conf/nginx.conf
在D:\Nginx\html目錄新建一個info.php檔案。輸入以下測試內容
- <?php
- echo phpinfo();
- ?>
開啟瀏覽器,輸入http://127.0.0.1/info.php測試,如果看到以下截圖,則代表已調通Nginx和PHP的執行關係。
5.安裝MySQL
到MySQL官網下載mysql-5.7.7-rc-winx64.zip,並解壓到D:\MySQL。
在系統的環境變數裡新增值為D:\MySQL的MySQL_HOME變數,並在PATH變數後面追加;%MySQL_HOME%\bin後重啟計算機。
重啟之後在cmd命令提示行介面輸入mysql -v,如果出現以下資訊,則表示mysql客戶端已安裝成功。
在D:\MySQL目錄下,複製my-default.ini為my.ini,修改my.ini檔案,將[mysqld]替換為一下內容
- [client]
- port = 3306
- [mysql]
- default-character-set = utf8
- [mysqld]
- port = 3306
- basedir = D:\MySQL
- datadir = D:\MySQL\data
- character_set_server = utf8
在cmd命令列中輸入“D:\MySQL\bin\mysqld.exe”啟動mysql server端服務。
另開一個cmd命令列,輸入“mysql -uroot -p”,密碼為空,如成功登陸出現以下截圖,則代表mysql本地環境已調通。
6.測試PHP+MySQL
在D:\PHP-TS目錄下,複製php.ini-development為php.ini,修改php.ini檔案:
分別將
736行 extension_dir = "ext"
890行 extension=php_mysql.dll
前的;號去掉。
在D:\Nginx\html目錄新建一個mysql.php檔案。輸入以下測試內容
- <?php
- $link=mysql_connect("localhost", "root", "");
- if(!$link) echo "FAILD!";
- else echo "OK!";
- ?>
開啟瀏覽器,輸入http://127.0.0.1/mysql.php測試,如果輸出“OK”,則代表已調通PHP連線MySQL。
7.製作一鍵啟動指令碼和一鍵關閉指令碼
在網際網路上下載RunHiddenConsole.exe檔案到D:\Nginx目錄。
新建start_wnmp.bat批處理檔案,用於一鍵啟動Nginx+PHP+MySQL服務。新增內容如下:
- @echo off
- echo Starting PHP FastCGI...
- RunHiddenConsole D:/PHP-TS/php-cgi.exe -b 9000 -c D:/PHP-TS/php.ini
- echo Starting Nginx...
- RunHiddenConsole D:/Nginx/nginx.exe -c D:/Nginx/conf/nginx.conf
- echo Starting MySQL Server...
- RunHiddenConsole D:/MySQL/bin/mysqld.exe
- @echo off
- echo Stopping nginx...
- taskkill /F /IM nginx.exe > nul
- echo Stopping PHP FastCGI...
- taskkill /F /IM php-cgi.exe > nul
- echo Stopping MySQL Server...
- taskkill /F /IM mysqld.exe > nul
- exit
7.安裝Composer
到https://getcomposer.org/composer.phar下載composer.phar到本地。假設想要下載Laravel到G:\WWW目錄,則把composer.phar下載到G:\WWW目錄。
8.下載Laravel
修改D:\PHP-TS\php.ini檔案,分別註釋掉
第888行 extension=php_mbstring.dll
第893行 extension=php_openssl.dll
前的;號。
在G:\WWW路徑下,cmd命令提示行裡執行以下命令
- php composer.phar create-project laravel/laravel laravel5 --prefer-dist
則會在此目錄下建立laravel5資料夾,裡面存放著Laravel5的原始碼。
修改D:\Nginx\conf\nginx.conf檔案,將第35行起的Server部分改成如下
- server {
- listen 80;
- server_name sub.domain.com;
- set $root_path 'G:/WWW/laravel5/public';
- root $root_path;
- index index.php index.html index.htm;
- try_files $uri $uri/ @rewrite;
- location @rewrite {
- rewrite ^/(.*)$ /index.php?_url=/$1;
- }
- 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 ~* ^/(css|img|js|flv|swf|download)/(.+)$ {
- root $root_path;
- }
- location ~ /\.ht {
- deny all;
- }
- }
重啟WNMP服務,在瀏覽器裡http://127.0.0.1,如果看到以下圖片,則表示Laravel執行環境已調通。