server win搭建apache网站服务器+php网站+MY SQL数据库调用电子阅览室

在这里插入图片描述

一、适用场景:

1、使用开源的免费数据库Mysql;
2、自己建网站的发布;
3、使用php代码建网站;
4、使用windows server作为服务器;
5、使用apache作为网站服务器。

二、win server 中apache网站服务器搭建

(一)下载win版apache

apache下载地址一:Apache VS17 binaries and modules download
apache下载地址二:Apche下载
1、https://httpd.apache.org
在这里插入图片描述

2、点Files for Microsoft Windows

在这里插入图片描述

3、点Apache Lounge

在这里插入图片描述

4、点httpd-2.4.58-240131-win64-VS17.zip 下载
在这里插入图片描述

(二)windows版apache网站服务器的配置过程

1、打开Apache解压目录下的conf目录中的httpd.conf文件
在这里插入图片描述

2、把Define SRVROOT和ServerROOT的目录换成自己的解压目录。

在这里插入图片描述

3、配置Apache端口(在本服务器上若端口不冲突,可以不修改端口号),Apache默认端口80,本例避免端口冲突改成8888,修改httpd.conf中的监听端口,如下图:
在这里插入图片描述

4、以管理员身份打开cmd,在Apache24\bin目录下执行安装命令httpd -k install
在这里插入图片描述

提示:The ‘Apache2.4’ service is successfully installed.即安装完成。
从上图中可以看出,在安装apache的过程中,提示设置服务名称,ServerName,所以,执行下一步配置服务器的名称
5、配置打开服务器时的名称和端口号,如下图:
在这里插入图片描述

6、再次执行安装程序,就正常结果,没有Errors报错,如下图:
在这里插入图片描述

7、查看已安装的apache版本号,如下图:
在这里插入图片描述

8、启动Apache服务,打开Apache bin目录下的ApacheMonitor.exe,点击“Start”,如下图:
在这里插入图片描述

9、启动成功后,灯由红变亮,service has started,服务中的apache服务也显示为已启动,如下图:
在这里插入图片描述

10、启动后在浏览器输入localhost:+你刚才设置的端口,显示下图代表安装成功
在这里插入图片描述

11、apache的默认站点根目录为htdocs,这个目录就是php文件运行的根目录,所有的php文件都要放到htdocs目录下运行,也可以自己更改工作目录,查找DocumentRoot和Directory字段自己定义的工作路径即可,如下图:。
在这里插入图片描述

三、apache网站服务器对php代码类型的网站支持配置:

(一)php版本下载地址:

Php下载地址一:php-8.2.5-Win32-vs16-x64.zip
Php下载地址二:php多版本

(二)php下载后的配置

1、把下载的php安装包解压,放到准备安装php的位置,本例放在服务器的D:\wwwroot\php82下,如下图:
在这里插入图片描述

2、在PHP的解压目录中找到php.ini-development直接复制一份然后改名为php.ini
在这里插入图片描述

3、然后我们打开名为名为php.ini的配置文件,进行修改,里面的extension,这是PHP的调用模块,只要把字段前分号;去掉,就可以打开此模块的功能,这一步要按照具体环境的部署需求操作,本例要使用mysql,所以开启mysql,如下图:
在这里插入图片描述

extension=mysqli
extension=php_mysqli.dll
这两行是打通Mysql时用的可在这一步先配置上

4、在php.ini的配置文件中再修改如下2行:
Extension=fileinfo 启用php中的fileinfo扩展
Extension=gd 启用gd扩展
在这里插入图片描述

5、设置电脑环境变量,编辑系统变量,在path中新增ext文件夹的路径
在这里插入图片描述

4、配置PHP模块到Apache服务器上
配置Apache24/conf/目录下的httpd.conf文件
在 LoadModule 结尾处补加以下代码(以下是PHP8配置):
LoadModule php_module “d:/wwwroot/php82/php8apache2_4.dll”
PHPIniDir “d:/wwwroot/php82/php.ini”
AddType application/x-httpd-php .php .phtml
在这里插入图片描述

5、在设置的工作目录下建立index.php文件,文件内容就是输出PHP信息

<?php phpinfo() ?>

在这里插入图片描述

6、重启Apache服务器(每次修改配置文件后,必须重启Apache服务器修改才能生效)
在这里插入图片描述

(1)启动失败,如下图:
在这里插入图片描述

(2)换一种方式,在服务器中启动,如下图:
在这里插入图片描述

(3)通过事件查看器,根据事件中的提示,第187行语法错误,查看httpd.conf的第187行后,结果多了个””,如下图:
在这里插入图片描述

(4)根据配置文件对应行,修改配置文件删掉多的”双引号后,再次启动,正常,如下图:
在这里插入图片描述

7、打开网页(192.168.0.56:8888/index.php),如下图:
在这里插入图片描述

此时PHP已经部署到Apache服务器啦!

四、mysql数据库的配置

(一)Mysql下载地址:MySQL Shell 8.3.0 Innovation

(二)配置PHP连接上Mysql

1、打开php.ini文件,查找extension_dir,去掉前面的注释并将ext文件路径改成我们自己的ext路径(记得重启Apache)
在这里插入图片描述

2、在php.ini中继续查找mysqli,下面两句前面的;分号注释删掉(然后重启Apache)
在这里插入图片描述

3、安装mysql,如下图:
(1)执行安装程序,本例安装mysql5.55,如下图:
在这里插入图片描述

(2)勾选接受协议,next下一步,如图:
在这里插入图片描述

(3)选择典型安装,如下图:

在这里插入图片描述

(4)点install,开始安装,如下图:
在这里插入图片描述

(5)点finish完成安装,如下图:
在这里插入图片描述

(6)配置Mysql,选择详细配置,如下图:
Standard Configuration(标准配置)设置选项可能与正准备运行MySQL的应用平台某些选项或参数不兼容。
Detailed Configuration(详细配置)如果系统上已经安装了MySQL和你想要配置的安装,可以更好的完成个性化定制
在这里插入图片描述

(7)本机作为mysql的服务器运行,此处选择server machine,如下图:
Developer Machine:主要为了个人使用,占用系统最少的资源。
Server Machine:主要用于像FTP,email,web服务器等等,耗用系统较多的资源。
Dedicated MySQL Server Machine:只用作MySQL服务器,不运行其他程序。耗用系统所有可用的资源。
在这里插入图片描述

(8)现在不配置数据库,选择multifunctional Database,如下图:
在这里插入图片描述

Multifunctional Database(多功能数据库):该选项同时使用InnoDB和MyISAM储存引擎,并在两个引擎之间平均分配资源。建议经常使用两个储存引擎的用户选择该选项。
Transactional Database Only(事务处理数据库):该选项同时使用InnoDB和MyISAM储存引擎,但是将大多数服务器资源指派给InnoDB储存引擎。建议主要使用InnoDB只偶尔使用MyISAM的用户选择该选项。
Non-Transactional DatabaseOnly(非事务处理数据库):该选项完全禁用InnoDB储存引擎,将所有服务器资源指派给MyISAM储存引擎。建议不使用InnoDB的用户选择该选项。
在这里插入图片描述

(9)选择你网站的一般mysql 访问量,同时连接的数目,“Decision Support(DSS)/OLAP()”、“Online Transaction Processing(OLTP)(500个左右)”、“Manual Setting(手动设置,自己输一个数)”,按“Next”继续,如下图:
在这里插入图片描述

(10)指定mysql的访问端口号,默认指定为3306,如下图:
在这里插入图片描述

(11)指定mysql的编码字符类型,本例选择标准,如下图:
标准字符集(Standard Character Set):支持西欧语言
支持多语言(Best Support For Multilingualism):UTF-8字符集
人工选择(Manual Selected Default Character Set/Collection):自己选择,GBK;GB2312;UTF-8
在这里插入图片描述

(12)选中launch the mysql server automatically 复选框,让mysql随windows的启动而自动启动。选中include bin directory in windows path 复选框,将mysql的bin目录添加到环境变量path中,这样在CMD命令行窗口的任何目录下,可以直接使用bin目录下的可执行文件,如下图:
在这里插入图片描述

(13)设置mysql的密码,网站使用该mysql数据时,需要用到密码,选中enable root access from remote machines 复选框,允许通过root用户远程登录。如下图:
在这里插入图片描述

(14)点击Excute执行配置过程。4步全部执行完成,即配置成功。
在这里插入图片描述

4、修改index.php中的内容

在这里插入图片描述

5、重新打开网页测试:
(1)在服务器本机测试,如下图:
在这里插入图片描述

(2)在服务器的浏览器上测试,如下图:
在这里插入图片描述

(2)在局域网浏览器上测试,如下图:

在这里插入图片描述
出现“Mysql连接成功”,那么Apache+PHP+Mysql环境已经搭建好啦!

五、调用电子阅览室网站测试效果

1、复制电子阅览室的源码到apache+php的网站服务器,如下图::
在这里插入图片描述

2、打开测试,OK

在这里插入图片描述
3、后续代码问题:
(1)锁定加密提示,如下图:
在这里插入图片描述

(2)文件所在的路径,说明文件存在,如下图:
在这里插入图片描述

(3)提示第36行问题,如下图:
在这里插入图片描述

本文至此结束,还剩加密问题需要解决,不足之处敬请批评指正。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/450109.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【v4l2】V4L2框架-videobuf2(二)

系列文章目录 【V4L2】V4L2框架简述 【V4L2】V4L2框架之驱动结构体 【V4L2】V4L2子设备 【V4L2】V4L2框架-media device 【V4L2】V4L2框架-videobuf2 文章目录 系列文章目录用户空间的操作/dev/video 节点与 videobuf2 联系编程注意事项 用户空间的操作 用户空间 stream 操作 …

【rk3229 android7.1.2 替换默认输入法】

问题平台描述 问题描述解决方法 郑重声明:本人原创博文&#xff0c;都是实战&#xff0c;均经过实际项目验证出货的 转载请标明出处:攻城狮2015 Platform: Rockchip CPU:rk3229 OS:Android 7.1.2 Kernel: 3.10 问题描述 国内客户&#xff0c;觉得安卓自带的输入法不好用&#x…

C语言从入门到熟悉------第二阶段

printf的用法 printf的格式有四种&#xff1a; &#xff08;1&#xff09;printf("字符串\n"); 其中\n表示换行的意思。其中n是“new line”的缩写&#xff0c;即“新的一行”。此外需要注意的是&#xff0c;printf中的双引号和后面的分号必须是在英文输入法下。双引…

如何选择满足业务需求的CRM系统?六大评估标准全解析!

任何企业在最终部署CRM管理系统前&#xff0c;都会经历一系列决断环节&#xff0c;例如是否要使用CRM、选择什么样的系统、前期投入是多少、预期的投资回报率等等。在挑选CRM系统这个环节&#xff0c;企业更是面临着大量的选择。市场上CRM厂商数量众多&#xff0c;产品宣传让人…

【Python】一文带你了解如何获取 Python模块 安装路径

【Python】一文带你了解如何获取 Python模块 安装路径 &#x1f308; 个人主页&#xff1a;高斯小哥 &#x1f525; 高质量专栏&#xff1a;Matplotlib之旅&#xff1a;零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程&#x1f448; 希望得到您的订阅…

ICC2:function eco / premask eco参考脚本

我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧? 拾陆楼知识星球入口 相关文章链接: ICC2:修short参考脚本 eco_netlist -by_verilog -file eco.v -write_changes eco.tcl source eco tcl place_eco_cells -eco_change_cells -no_legalize place_eco_cells -eco_cha…

c++: 引用能否替代指针? 详解引用与指针的区别.

文章目录 前言1. 引用和指针的最大区别:引用不能改变指向2. 引用和指针在底层上面是一样的3. 引用和指针在sizeof面前大小不同4. 有多级指针,没有多级引用5.引用是引用的实体,指针会向后偏移同一个类型的大小 总结 前言 新来的小伙伴如果不知道引用是什么?可以看我的上一篇文…

应用方案 | D78040场扫描电路

一 描 述 D78040是一款场扫描电路&#xff0c;偏转电流可达1.7Ap-p&#xff0c;可用于中小型显示器。 二 特 点 1、有内置泵电源 2、垂直输出电路 3、热保护电路 4、偏转电流可达1.7Ap-p 三 基本参数 四 应用电路图 1、应用线路 2、PIN5脚输出波形如下&#…

java中数组的定义与使用

Java中的数组跟c语言的数组几乎不一样&#xff0c;我们要区分对待。在之后你就能理解到我为什么说这句话了。 1.java中数组的创建与初始化 数组的创建 如下&#xff0c;皆为数组的创建。 double[] a; int[] b; 创建时的[]里面绝对不能填数字。 数组的初始化 主要分为动态…

Javaweb之Maven高级分模块设计与开发的详细解析

1. 分模块设计与开发 1.1 介绍 所谓分模块设计&#xff0c;顾名思义指的就是我们在设计一个 Java 项目的时候&#xff0c;将一个 Java 项目拆分成多个模块进行开发。 1). 未分模块设计的问题 如果项目不分模块&#xff0c;也就意味着所有的业务代码是不是都写在这一个 Java 项…

如何使用最大努力通知实现分布式事务?与本地消息表区别?

什么是最大努力通知&#xff1f; 最大努力通知&#xff08;Best-Effort Notification&#xff09;是一种在分布式系统中处理分布式事务的方法之一&#xff0c;它强调尽力而为&#xff0c;不保证完全的事务一致性&#xff0c;但可以通过一定的机制来提供部分保证。在最大努力通…

程序员有哪些常用的技术网站呢?

在当今信息化时代&#xff0c;程序员们能够通过互联网接触到许多优秀的技术网站&#xff0c;这些网站为他们提供了丰富的学习资源和交流平台。这些技术网站涵盖了各种软件开发、设计、数据分析和人工智能等领域&#xff0c;为程序员们提供了广阔的学习空间和交流机会。在这篇文…

蓝桥杯[OJ 3412]-最小化战斗力差距-CPP-贪心

目录 一、问题描述&#xff1a; 二、整体思路&#xff1a; 三、代码&#xff1a; 一、问题描述&#xff1a; 二、整体思路&#xff1a; 首先每个值都有可能为min(b)&#xff0c;那么对于每个可能为min(b)的值&#xff0c;要使得max(a)尽可能小&#xff0c;因此枚举所有相差最…

每日学习笔记:C++ STL 的List

定义 特点 操作函数 关于c.merge(c2)的分析&#xff0c;详见&#xff1a; 。。。。 C list merge()用法及代码示例 - 纯净天空 (vimsky.com) 异常安全性 运用实例

Python 导入Excel三维坐标数据 生成三维曲面地形图(面) 4-3、线条平滑曲面(原始颜色)去除无效点

环境和包: 环境 python:python-3.12.0-amd64包: matplotlib 3.8.2 pandas 2.1.4 openpyxl 3.1.2 scipy 1.12.0 代码: import pandas as pd import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D from scipy.interpolate import griddata fro…

Arm MMU深度解读

文章目录 一、MMU概念介绍二、虚拟地址空间和物理地址空间2.1、(虚拟/物理)地址空间的范围2.2、物理地址空间有效位(范围) 三、Translation regimes四、地址翻译/几级页表&#xff1f;4.1、思考&#xff1a;页表到底有几级&#xff1f;4.2、以4KB granule为例&#xff0c;页表的…

抽象工厂模式——创建型模式

抽象工厂模式——创建型模式 抽象工厂模式是一种软件设计模式&#xff0c;它解决了在创建一组相关或相互依赖的对象时的一些核心问题。其核心问题包括&#xff1a; 对象的创建与使用分离&#xff1a; 抽象工厂模式通过引入抽象工厂接口以及具体工厂类&#xff0c;将对象的创建与…

高浓度氨氮废水如何处理达标排放

高浓度氨氮废水的处理和达标排放是环境保护工作中的重要任务之一。随着工业化进程的加速和人们环保意识的增强&#xff0c;如何有效处理高浓度氨氮废水已成为一个迫切需要解决的问题。本文将探讨高浓度氨氮废水的处理方法和技术&#xff0c;以确保其达到排放标准&#xff0c;减…

面向IoT物联网的时间序列引擎

1、背景 随着近年来业务的发展&#xff0c;尤其是机器产生的数据占比越来越高的趋势下&#xff0c;时序数据因为其业务价值越来越被更多地关注&#xff0c;也因而催生了专用的时间序列数据库&#xff0c;简称时序数据库&#xff08;TimeSeries Database&#xff0c;TSDB&#x…

leetcode 热题 100_螺旋矩阵

题解一&#xff1a; 模拟&#xff1a;定义四个边界&#xff0c;指针按右下左上的顺序遍历&#xff0c;每遍历一条边&#xff0c;边界就减一&#xff0c;并且在某个方向没有可以遍历的数时直接返回。 import java.util.ArrayList; import java.util.List;class Solution {publi…