php简单开发环境

一年一前,我还是一个PHP开发者新手,每次开发需要的环境都是使用集成环境。我记得刚开始学习PHP开发啊的时候,都是用windows+apache+php+mysql的环境,后来走上了工作岗位不知道是不是人变懒了,就开始使用集成环境了。

用过的集成环境有国外的“Wampserver”,就是那个粉红色的集成环境。后来又用了国内稍微轻巧的phpstudy.有一天心血来潮,我不用这些已经集成好的开发环境了,我要自己搭建一个开发环境。

说干就干,首先 用到的东西有,php,mysql,nginx.因为现在服务器用了NGINX,所以我的开发环境就用Nginx.

  1. 新建一个文件夹,'/nmp'

  2. 下载PHP任何版本,解压到nmp下

  3. 下载NGINX,解压到nmp下

  4. 下载mysql,解压到nmp下

  5. 下载一个可以让脚本在后台运行的文件“RunHiddenConsole.exe”。、

  6. 在文件夹中新建一个文件,文件名改为“start.bat”

准备好的目录结构如下

用记事本或者其他编辑工具打开satart.bat,不要双击,要右键>编辑,复制上下面的内容

@echo off
title WNMP
chcp 936
REM 设置颜色
color 2F
REM 清空屏幕
cls
set cur_dir=%~dp0
set nginx_home=%cur_dir%nginx
::set php_home=%cur_dir%php56
set php_home=%cur_dir%php70
::set mysql_home=%cur_dir%mysql-5.7.23-winx64
set mysql_home=%cur_dir%MySQL
REM Windows 下无效  
REM set PHP_FCGI_CHILDREN=5
:help
ECHO. 
ECHO.[1] 启动wnmp    [2] 关闭wnmp    [3] 重启wnmp
ECHO.[4] 启动PHP    [5] 停止PHP    [6] 重启PHP
ECHO.[7] 启动Ngnix    [8] 停止Nginx    [9] 重启Nginx
ECHO.[10] 启动MySQL    [11] 停止MySQL    [12] 重启MySQL
ECHO.  
ECHO.[h] 显示帮助
echo.[cmd]打开新窗口
ECHO.[q] 退 出  
ECHO.
goto wait_input

REM 服务情况检查
:status
tasklist | find /i "nginx.exe"
tasklist | find /i "php-cgi.exe"
tasklist | find /i "mysqld.exe"
:: goto wait_input
REM 等待命令输入
:wait_input
REM 打印运行状态
set input=
set /p input=输入命令:
if "%input%"=="1" goto start
if "%input%"=="2" goto stop
if "%input%"=="3" goto restart
if "%input%"=="4" goto start_php
if "%input%"=="5" goto stop_php
if "%input%"=="6" goto restart_php
if "%input%"=="7" goto start_nginx
if "%input%"=="8" goto stop_nginx
if "%input%"=="9" goto restart_nginx
if "%input%"=="10" goto start_mysql
if "%input%"=="11" goto stop_mysql
if "%input%"=="12" goto restart_mysql
:: if "%input%"=="start" goto start
if "%input%"=="stop" goto stop
if "%input%"=="restart" goto restart
if "%input%"=="start_php" goto start_php
if "%input%"=="stop_php" goto stop_php
if "%input%"=="restart_php" goto restart_php
if "%input%"=="start_nginx" goto start_nginx
if "%input%"=="stop_nginx" goto stop_nginx
if "%input%"=="restart_nginx" goto restart_nginx
if "%input%"=="h" goto help
if "%input%"=="status" goto status
if "%input%"=="cmd" start cmd
if "%input%"=="q" exit
goto wait_input
REM 等待命令输入==end


REM 启动服务
:start
REM 每个进程处理的最大请求数,或设置为 Windows 环境变量  
set PHP_FCGI_MAX_REQUESTS=1000  
echo 启动 PHP FastCGI...  
RunHiddenConsole %php_home%/php-cgi.exe -b 127.0.0.1:9000 -c %php_home%/php.ini
RunHiddenConsole %php_home%/php-cgi.exe -b 127.0.0.1:9000 -c %php_home%/php.ini
RunHiddenConsole %php_home%/php-cgi.exe -b 127.0.0.1:9000 -c %php_home%/php.ini
RunHiddenConsole %php_home%/php-cgi.exe -b 127.0.0.1:9000 -c %php_home%/php.ini
echo PHP 启动完成

echo 启动 Nginx…
REM RunHiddenConsole %nginx_home%/nginx.exe
RunHiddenConsole %nginx_home%/nginx.exe -p %nginx_home%
echo Nginx启动完成

echo 启动 Mysql…
REM RunHiddenConsole %nginx_home%/nginx.exe
RunHiddenConsole %mysql_home%/bin/mysqld.exe
echo Mysq启动完成
echo .
goto wait_input
REM 停止服务

:stop
REM 停止nginx
echo.
@TASKKILL /F /IM nginx.exe >nul 2> nul
@TASKKILL /F /IM php-cgi.exe > nul 2> nul
@TASKKILL /F /IM mysqld.exe > nul 2> nul
echo.
echo 停止服务完成
goto wait_input

:shoutdown
echo .
@TASKKILL /F /IM nginx.exe >nul 2> nul
@TASKKILL /F /IM php-cgi.exe > nul  2> nul
@TASKKILL /F /IM mysqld.exe > nul 2> nul
goto :eof

REM 重启服务
:restart
echo 停止Nginx
@TASKKILL /F /IM nginx.exe >nul 2> nul
echo 停止PHP
TASKKILL /F /IM php-cgi.exe > nul  2> nul
echo 启动 PHP FastCGI...  
RunHiddenConsole %php_home%/php-cgi.exe -b 127.0.0.1:9000 -c %php_home%/php.ini
RunHiddenConsole %php_home%/php-cgi.exe -b 127.0.0.1:9000 -c %php_home%/php.ini
RunHiddenConsole %php_home%/php-cgi.exe -b 127.0.0.1:9000 -c %php_home%/php.ini
RunHiddenConsole %php_home%/php-cgi.exe -b 127.0.0.1:9000 -c %php_home%/php.ini
echo PHP 启动完成
echo 启动 Nginx…
REM RunHiddenConsole %nginx_home%/nginx.exe
RunHiddenConsole %nginx_home%/nginx.exe -p %nginx_home%
echo Nginx启动完成
REM call :stop_mysql
goto wait_input


REM 启动PHP
:start_php
echo 启动 PHP FastCGI...  
RunHiddenConsole %php_home%/php-cgi.exe -b 127.0.0.1:9000 -c %php_home%/php.ini
RunHiddenConsole %php_home%/php-cgi.exe -b 127.0.0.1:9000 -c %php_home%/php.ini
RunHiddenConsole %php_home%/php-cgi.exe -b 127.0.0.1:9000 -c %php_home%/php.ini
RunHiddenConsole %php_home%/php-cgi.exe -b 127.0.0.1:9000 -c %php_home%/php.ini
echo PHP 启动完成
goto wait_input

REM 停止PHP
:stop_php
echo 停止PHP
TASKKILL /F /IM php-cgi.exe > nul
echo PHP已停止
goto wait_input
REM 重启PHP
:restart_php
echo 停止PHP
TASKKILL /F /IM php-cgi.exe > nul
echo PHP已停止
call :start_php

:start_nginx
echo 启动 Nginx…
REM RunHiddenConsole %nginx_home%/nginx.exe
RunHiddenConsole %nginx_home%/nginx.exe -p %nginx_home%
echo Nginx启动完成
goto wait_input

:stop_nginx
echo 停止Nginx
@TASKKILL /F /IM nginx.exe >nul 2> nul
if "%ERRORLEVEL%"=="0" (
 echo Nginx已停止
) else (
 ECHO nginx未运行
)
goto wait_input

:restart_nginx
echo 停止Nginx
@TASKKILL /F /IM nginx.exe >nul 2> nul
echo 启动 Nginx…
RunHiddenConsole %nginx_home%/nginx.exe -p %nginx_home%
echo Nginx启动完成
goto wait_input

:start_mysql
echo 启动 Mysql…
REM RunHiddenConsole %nginx_home%/nginx.exe
RunHiddenConsole %mysql_home%/bin/mysqld.exe
echo Mysq启动完成
goto wait_input

:stop_mysql
echo 停止MYSQL...
TASKKILL /F /IM mysqld.exe > nul
if "%ERRORLEVEL%"=="0" (
 echo MYSQL已停止
) else (
 ECHO MYSQL未运行
)
goto wait_input

:restart_mysql
echo 停止MYSQL...
TASKKILL /F /IM mysqld.exe > nul
echo 启动 Mysql…
REM RunHiddenConsole %nginx_home%/nginx.exe
RunHiddenConsole %mysql_home%/bin/mysqld.exe
echo Mysq启动完成
goto wait_input

粘贴到打开的start.bat文件,然后保存。这是双击start.bat.就会看到如下界面

输入数字1,回车。一个简单的,可玩性极高的本机开发环境就搭建起来了。

网友评论

3条评论

发表

网友评论

3条评论

发表

最新评论

11月13日 23:13

秋月 7 0

图片怎么这么糊。

06月08日 09:06

06月07日 20:33

推荐文章

彩龙

Copyright © 2008-2019 彩龙社区(http://www.clzg.cn) 版权所有 All Rights Reserved.

免责声明: 本网不承担任何由内容提供商提供的信息所引起的争议和法律责任。

经营许可证编号:滇B2-20090009-7

下载我家昆明APP 下载彩龙社区APP