您的位置 首页 php

把开发环境搭上,开始码代码

闲来没事整理一下php运行环境的安装,包括windows系统、linux系统下独立安装以及集成环境安装,环境搭建组合包括wamp、wnmp、lnmp,也没啥技术点,只为建个档,以后不再到网上找了,分享一个,若大家觉得点用,欢迎拿走。

1.Window系统环境

版本选项:

Windows: 64位

Php版本:php-8.0.3

apache 版本/ nginx (任一,但不建议nginx):Apache2.4.46 / nginx-1.18.0

Mysql版本:8.0.23

安装目录(不安装在c盘):E:\php\env

自定义项目根目录:E:\php\www

环境目录(nginx、Apache任选一安装)

1.1.PHP安装

(一)下载压缩包”php-8.0.3-win32-vs16-x64.zip ( VS16 x64 Thread Safe )”解压到指定安装目录

官网下载地址:(windows版)

说明:php只需下载配置即可

(二)进入目录,拷贝php. ini -production一份命名为php.ini作为php配置文件

(三)Php.ini配置

a. 设置扩展文件路径,找到extension_dir,去掉前面分号并配置扩展库目录,如:

extension_dir = “E:\php\env\php-8.0.3\ext”;

b. 根据需求打开gd、mysqli、pdo_mysql、mbstring、curl等常用扩展使用,去掉前面分号即可,如:extension=gd2;

c. 设置时区为中国地区,date.timezone =PRC;

d. 设置支持短标签写法,short_open_tag = Off改为short_open_tag = On;

e. 开启 cgi ,以支持nginx与php通信(apache则采用模块化与php通信),分别找到以下关键词进行配置(去掉前面分号;开启)如下:

cgi.force_redirect = 1

cgi.fix_pathinfo=1

cgi.rfc2616_headers = 0

f. 配置session存储目录,为了安全尽可能设置为外网访问不到的服务器目录

session.save_path = “C:/WINDOWS/Temp”

说明: 下载的php版本需要VS16 x64 Thread Safe版,否则没有apache所需dll库,具体原因自行百度。

(四)(选项)配置php系统 环境变量

配置php系统环境变量

说明: 执行php命令若报错:PHP Warning: ‘C:\Windows\SYSTEM32\VCRUNTIME140.dll’ 14.14 is not compatible……需要Visual Studio 2015、2017 和 2019支持,根据实际情况下载安装。

1.2. APACHE安装

(一) 下载压缩包 httpd -2.4.46-o111j-x64-vc15.zip并解压到指定目录

官网下载地址:(windows版本)

(二)编辑配置文件conf/httpd.conf如下:

a. 修改Define SRVROOT “/Apache24” 为apache具体安装目录 Define SRVROOT “E:/php/env/httpd-2.4.46” ;

b. 添加对php模块的支持,搜索关键词”#LoadModule”找到模块加载末尾行追加如下内容:

 #对php支持
LoadModule php_module "E:/php/env/php-8.0.3/php8apache2_4.dll"  
PHPIniDir "E:/php/env/php-8.0.3"
AddType application/x-httpd-php .php .htm . html   

c. 自定义项目根目录,查找关键词”DocumentRoot”修改如下内容:

 DocumentRoot "${SRVROOT}/htdocs"
< Directory  "${SRVROOT}/htdocs">  

修改为如下内容:

 DocumentRoot "E:/php/www"
<Directory "E:/php/www">  

说明: 提前新建好www根目录

d. 取消目录索引(即禁止曝出项目目录结构),Options Indexes FollowSymLinks 改为Options FollowSymLinks;

e. 查找”DirectoryIndex”设置根目录默认访问页面如下:

 <IfModule dir_module>
    DirectoryIndex index.php index.htm index.html
</IfModule>  

(三)安装apache系统服务 ,cmd命令窗口,切换到E:\php\env\httpd-2.4.46\bin目录, 执行httpd.exe -k install -n Apache2.4(若删除服务:sc delete Apache2.4);

(四)启动apache服务 ,在电脑服务中找到apache点击启动或通过E:\php\env\httpd-2.4.46\bin\ApacheMonitor.exe进行启动;

apache启动状态

ApacheMonitor.exe管理效果

(五)php运行环境测试: 在www目录中新建index.php,输入探针函数测试web服务以及各项配置是否生效,内容如下:

 <?php
phpinfo();
?>  

浏览器输入运行成功效果

1.3.MYSQL安装

(一)下载压缩包mysql-8.0.23-winx64.zip并解压到指定目录

官网下载地址:

国内镜像地址:中科大:,搜狐:

(二)mysql目录下新建配置文件my.ini,添加内容如下:

 [mysqld]
# 端口
port=3306
# 安装目录
basedir=E:/php/env/mysql-8.0.23
# 数据存放目录
datadir=E:/php/env/mysql-8.0.23/data
# mysql服务器支持的最大并发连接数(用户数)
max_connections=200
# 最大连接错误次数
max_connect_errors=10
# 默认编码
character-set-server=utf8mb4
# 默认表的存储引擎
default-storage-engine=INNODB
# 默认使用"mysql_native_password"插件认证
default_authentication_plugin=mysql_native_password
[mysql]
# 默认使用编码utf8mb4
default-character-set=utf8mb4
[client]
# 客户端连接服务端默认使用的端口
port=3306
default-character-set=utf8mb4  

说明: my.ini根据优化需求配置

(三)初始化数据库: 系统管理员身份运行cmd,切换到E:\php\env\mysql-8.0.23\bin目录(之后步骤都在这个目录执行命令),执行命令:mysqld –initialize –console,记住初始化过程中生成的临时密码,后续修改密码使用;

初始化数据库,获取临时密码

(四)安装mysql系统服务并运行服务, 执行命令mysqld –install Mysql,之后,执行net start mysql;

安装mysql系统服务并启动服务

(五)修改密码: 执行命令mysql -u root -p,输入临时密码,登录后执行命令ALTER USER ‘root’@’localhost’ IDENTIFIED WITH mysql_native_password BY ‘root’; 修改新密码为root(不建议密码设置为root);

登录mysql

(六)配置mysql系统环境变量(可选项);

配置mysql环境变量(可选项)

(七)MYSQL安装完成,可通过命令、Navicat等数据库工具测试。

查看mysql版本

1.4.NGINX安装

安装wnmp组合的nginx,若与iis或apache服务的端口冲突,设置其他端口或停掉其他服务后再运行nginx。

(一)下载压缩包nginx-1.18.0.zip(windows版)并解压到指定目录

官网下载地址:

(二)点击nginx.exe测试nginx服务,出现”welcome…”代表运行成功

nginx运行成功

(三)修改配置文件,指定项目根目录以及开通对php的支持

a. 指定根目录以及默认访问页面

         location / {
            root   html;
            index  index.html index.htm;
        }  

以上内容改为:

         location / {
            root   E:/php/www;
            index  index.php index.html index.htm;
        }  

b. 开通对php的支持,去掉前面的#注释

         #location ~ \.php$ {
        #    root           html;
        #    fastcgi_pass   127.0.0.1:9000;
        #    fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        #    include        fastcgi_params;
        #}  

并修改内容为:

         location ~ \.php$ {
           root           E:/php/www;
           fastcgi_pass   127.0.0.1:9000;
           fastcgi_index  index.php;
           fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
           include        fastcgi_params;
        }  

(四)下载RunHiddenConsole用于快速启动、停止nginx与php的通信

a. 百度下载RunHiddenConsole,将RunHiddenConsole.exe、start_nginx.bat、stop_nginx.bat拷贝到nginx目录下,并分别修改start_nginx.bat、stop_nginx.bat内容;

RunHiddenConsole目录结构

start_nginx.bat内容如下:

 @echo off
REM Windows 下无效 
REM set PHP_FCGI_CHILDREN=5
REM 每个进程处理的最大请求数,或设置为 Windows 环境变量 
set PHP_FCGI_MAX_REQUESTS=1000
echo Starting PHP FastCGI...
RunHiddenConsole E:/php/env/php-8.0.3/php-cgi.exe -b 127.0.0.1:9000 -c E:/php/env/php-8.0.3/php.ini
echo Starting nginx...
RunHiddenConsole E:/php/env/nginx-1.18.0/nginx.exe -p E:/php/env/nginx-1.18.0  

stop_nginx.bat内容如下:

 @echo off
echo Stopping nginx...  
taskkill /F /IM nginx.exe > nul
echo Stopping PHP FastCGI...
taskkill /F /IM php-cgi.exe > nul
exit  

b. 测试: E:\php\www项目根目录下新建hello.php文件,双击运行start_nginx.bat,浏览器访问测试结果,双击stop_nginx.bat则停止nginx服务。

wnmp环境运行结果

2.Linux系统环境

待续

文章来源:智云一二三科技

文章标题:把开发环境搭上,开始码代码

文章地址:https://www.zhihuclub.com/149767.shtml

关于作者: 智云科技

热门文章

网站地图