(一)环境部署

记录一下学习github上一个项目

Windows下安装Apache:教程地址
Windows下PHPStorm安装交叉:PHP中文网
Windows下MySql5安装:百度经验
其它参考:工程自带README文件

1、配置IP地址映射关系

  • 配置 hosts 文件路径: C:\Windows\System32\drivers\etc\hosts
  • 在该文件里面添加如下映射:127.0.0.1 www.iotweb

2、Apache安装配置配置

  • 将下载好的Apache服务器(一定要下64位的,后面的软件也都是在这里插入代码片)放在英文目录下
  • 找到httpd-2.4.41-o111c-x86-vc15-r2\Apache24\conf\httpd.conf文件
  • 修改39行:(黄色加粗部分为Apache服务器放置的位置)
  • Define SRVROOT "F:\PHPWeb\project\httpd-2.4.41-o111c-x86-vc15-r2\Apache24"
  • ServerRoot “${SRVROOT}”
  • 修改509行(把前面的#注释符去掉)
  • Include conf/extra/httpd-vhosts.conf
  • 安装: cmd下输入:(apache为自己设定的名称)
  • path\httpd.exe -k install -n apache

  • 80端口被占用的解决办法,Apache无法启动
    关于端口号,咱们换一个8888没人用的就行了
    试了网上所能找的的所有办法都没解决,重启了一下,就好了
    还有原因就是配置问题(SRVROOT参数为服务器放置位置),或语法问题
    emmm 又是这个问题还是没解决,有时候重启能好,有时候不好,太绝了
    终极原因:配置的问题,没配置就不会有问题,配置出错就会这样,不错就OK。所以当我添加了一些配置就无法启动时,此时就该检查前一次添加的配置是否正确。

3、Apache关联Web代码

  • 找到httpd-2.4.41-o111c-x86-vc15-r2\Apache24\conf\original\extra\httpd-vhosts.conf文件
  • 修改如下
<VirtualHost *:80>
#   ServerAdmin webmaster@dummy-host.example
	ServerName www.iotweb在这里插入代码片
    ServerAlias www.iotweb
    DocumentRoot F:/PHPWeb/project/AdminIOT-master/AdminIOT/public
    
    ErrorLog "logs/dummy-host.example-error.log"
    CustomLog "logs/dummy-host.example-access.log" common
	
	<Directory "F:/PHPWeb/project/AdminIOT-master/AdminIOT/public/">
		Options -Indexes +FollowSymLinks +MultiViews
		AllowOverride All
		Require local
	</Directory>
</VirtualHost>

4、导入数据库及配置

  • 直接将数据库文件拖动到数据库服务器名上即可自动导入(Navicat for MySQL软件)
  • 数据库配置

5 遇到的问题

5.1 Forbidden 403


解决方法:(我觉得每个人遇到的问题原因不一定一样,所以我的只提供参考)
httpd-vhosts.conf中options参数配置错误:其中参数意义分别是

参数意义
Indexes :
FollowSymLinks :
MultiViews:

修改如下:(直接用options all也行)

<VirtualHost _default_:8888>
ServerName www.iotweb
ServerAlias www.iotweb
DocumentRoot F:/PHPWeb/project/AdminIOT-master/AdminIOT/public
<Directory "F:/PHPWeb/project/AdminIOT-master/AdminIOT/public/">
#Options -Indexes +FollowSymLinks +MultiViews
	Options -Indexes +FollowSymLinks +MultiViews
	AllowOverride All
	Require all granted
</Directory>
</VirtualHost>

5.2 Index of /

这是上一个问题解决之后访问显示,这并不是我们想要的。这也是由上一问题参数配置所引起的。
所以在上一问题的基础上继续配置apache:

DirectoryIndex index.php

5.3 主页显示代码而非网页内容

我怀疑这是一个低级错误,是因为我还没安装PHP,等我晚上回来安装一下看能否解决问题。
安装php:

这样配置后apache又不能启动了…气不气
查了一下原因,如下:
原因是由于PHP7需要最新的Visual C++ 编译环境,所以需要在电脑上安装以下软件。
下载网址是PHP下载同一位置,在左侧,如图:

不说了,重启计算机让他生效了。
问题又来啦
这个问题是项目使用thinkphp,所以需要下载放到项目路径下就OK了。

六、效果

初步部署完成,效果如下。后面还有好多问题,遇到了再记录吧。

更多推荐

PHP Web项目部署记录(一)