服务端(Win server2012)+IIS管理器配置PHP服务器并部署网站讲解

标签: 笔记  服务器  javascript  html  php

我打算把IIS搭建一个网站的项目,因项目的后端为php,因此想在IIS配置PHP服务器的环境。说到端口的问题,因为IIS和phpstudy的默认端口都为80,这样两个端口会冲突,如何避免端口冲突呢?如何把IIS搭建一个网站项目并配置PHP服务器的环境呢?毕竟这东西是我第一次接触到,只好先去找网上摸索这玩意东西。如果你第一次接触这东西,最好是在虚拟机(win server2012)的环境中来部署试验。如果你测试成功的话,然后在云服务器的环境中部署网站(按测试的步骤操作),最后可在访问网站。

当我在测试的过程中,遇到了不少的问题,比如一般遇到都是404啊、500啊等的问题,这些说明配置错误、路径文件错误等,这些问题我每次很困惑,然后自己去摸索并找网上解决。过了一段时间到现在,终于解决好了,这段的时间中肯定学到了不少的东西,毕竟这些玩意东西是我第一次接触的。话是不是有点多hhh。好了,我来整理总结一下:

首先我提醒一下,如果没有IIS的话,首先要安装IIS,然后再安装phpstudy。(注:IIS安装中把所有的功能都打勾)。这安装的操作很简单,我相信你们这种安装不难的,直接忽略!

为什么要先安装IIS再安装phpstudy。如果没有安装IIS,在C盘里面是没有inetput文件夹及wwwroot文件夹,它们就是默认站点。因此必须先安装好IIS,安装好之后,它们的文件夹自动会显示出来的。

还有个细节,就是phpstudy安装中的目录一般是放在inetpub->wwwroot里,因为我需要IIS配置php服务器的环境。然后把项目(自己开发东西)放在inetpub->wwwroot->phpstudy_pro->WWW的目录下即可。

最后,安装的步骤操作OK!接下来是部署及配置.

1.IIS搭建网站

首先打开IIS管理器,并点击添加网站:

(1)网站名称:你们写任意的名称都行;

(2)物理路径:选择开发项目的目录位置,我一般放在ineput->wwwroot->phpstudy_pro->www->开发项目的文件夹;

(3)应用程序池为DefaultAppPool;

(4)其他可选填。

 

另外点击连接为->打勾特点用户并点击设置->设置凭据填用户名及密码(就是你们自己的管理员账号及密码即可),如果没有这个设置身份授权,否则到时候网页中没方法访问路径文件并无法显示图片。比如我把自己图片放在网页上,因此在网页中总是会访问图片的路径文件。另外把该用户的所有权限都打勾允许。

这样OK,然后试试打开能不能访问网站。如果能访问网站,那接下来可以配置php服务器。当IIS部署网站完成之后,千万不能忽略访问网站的测试。因为我在测试中直接部署网站并配置php服务器搞定好,结果就报错500内部服务器,说明配置错误,找了很多解决方法都不通行,只能重新部署网站并配置,因此我吸取这个教训。我的方法就是部署网站搞定好,可以用伪静态页面或静态页面来试验,然后能不能访问网站。如果能访问的话,那接下来可以配置php服务器的环境。

 

2.如何phpstudy改端口

     不要先开启服务器,因为那边IIS一直在开启,否则生产端口冲突。首先点击网站->管理->修改->端口,端口改为8080

改端口之后,可以开启php服务器,这样端口不会冲突。OK!

3.配置php服务器

选择左侧自己的网站,然后点击“处理程序映射”。

 

首先右侧点击添加模块映射->弹出框的编辑模块映射,然后填写可按照如下图的各种输入框,最后确定。

(可执行文件为选择为phpstudy_pro\Extensions\php\php7.3.4nts\php-cgi.exe)

然后弹出来,选择“”即可。php程序映射搞定OK!

 

回到IIS主页,然后点击”FastCGI设置”。

打开”FastCGI设置”之后,选择之前添加过的映射模块路径,再点击编辑,然后找到“监视对文件所有的更改”,并改php配置目录的文件。

监视对文件所做的更改为phpstudy_pro\Extensions\php\php7.3.4nts\php.ini

 以上的IIS配置php已完成,基本可以访问网站(动态页面),不过部分动态的内容都没有显示出来,并报错404.3出来。根据通过自己摸索了这些,说明web配置文件还没弄好,于是找到自己的项目目录下的web.config并打开,原配置代码就是:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <handlers>
            <add name="php" path=".php" verb="*" modules="FastCgiModule" scriptProcessor="C:\inetpub\wwwroot\phpstudy_pro\Extensions\php\php7.3.4nts\php-cgi.exe" resourceType="File" />
        </handlers>
        <defaultDocument>
            <files>
                <!—因保密路径文件,这个就是默认文档,可以不用管-->
            </files>
        </defaultDocument>
        <httpErrors errorMode="Detailed" />
    </system.webServer>
</configuration>

然后需要找到path=".php",添加为“*”,path=“*.php”即可。改为如下:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <handlers>
            <add name="php" path="*.php" verb="*" modules="FastCgiModule" scriptProcessor="C:\inetpub\wwwroot\phpstudy_pro\Extensions\php\php7.3.4nts\php-cgi.exe" resourceType="File" />
        </handlers>
        <defaultDocument>
            <files>
                <!—因保密路径文件,这个就是默认文档,可以不用管-->
            </files>
        </defaultDocument>
        <httpErrors errorMode="Detailed" />
    </system.webServer>
</configuration>

最后保存好web.config配置文件,就可以访问网站并部分动态页面都显示出来了!说明整个部署网站及配置php服务器环境搞定!

自己解决这些问题并摸索这些东西,当然是不容易的!能解决了bug是我最大的开心!个人喜欢钻研(*^▽^*)!

如有问题,欢迎留言!

版权声明:本文为h907310116原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/h907310116/article/details/109168841

智能推荐

CentOS学习之路1-wget下载安装配置

参考1: https://blog.csdn.net/zhaoyanjun6/article/details/79108129 参考2: http://www.souvc.com/?p=1569 CentOS学习之路1-wget下载安装配置 1.wget的安装与基本使用 安装wget yum 安装软件 默认安装保存在/var/cache/yum ,用于所有用户使用。 帮助命令 基本用法 例子:下载...

深入浅出Spring的IOC容器,对Spring的IOC容器源码进行深入理解

文章目录 DispatcherServlet整体继承图 入口:DispatcherServlet.init() HttpServletBean.init() FrameworkServlet.initServletBean() 首先大家,去看Spring的源码入口,第一个就是DispatcherServlet DispatcherServlet整体继承图 入口:DispatcherServlet....

laravel框架的课堂知识点概总

1. MVC 1.1 概念理解 MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑 MVC 是一种使用 MVC(Model View Controller ...

Unity人物角色动画系统学习总结

使用动画系统控制人物行走、转向、翻墙、滑行、拾取木头 混合树用来混合多个动画 MatchTarget用来匹配翻墙贴合墙上的某一点,人物以此为支点翻墙跳跃 IK动画类似于MatchTarget,控制两只手上的两个点来指定手的旋转和位置,使得拾取木头时更逼真 创建AnimatorController: 首先创建一个混合树,然后双击 可以看到该混合树有五种状态机,分别是Idle、WalkForward、...

Composer 安装 ThinkPHP6 问题

Composer 安装 ThinkPHP6 问题 先说说问题 一.运行环境要求 二.配置 参考: ThinkPHP6.0完全开发手册 先说说问题 执行ThinkPHP6的安装命令 遇到问题汇总如下: 看提示是要更新版本,执行命令更新。 更新之后,再次安装ThinkPHP,之后遇到如下问题。 尝试了很多方法,依然不能解决。其中包括使用https://packagist.phpcomposer.com...

猜你喜欢

Spring Boot 整合JDBC

今天主要讲解一下SpringBoot如何整合JDBC,没啥理论好说的,直接上代码,看项目整体结构 看一下对应的pom.xml 定义User.java 定义数据源配置,这里使用druid,所以需要写一个配置类 上面指定druid的属性配置,和用户登录的账号信息以及对应的过滤规则: 下面定义数据访问接口和对应的实现: 数据访问层很简单,直接注入JdbcTemplate模板即可,下面再看对应的servi...

html鼠标悬停显示样式

1.显示小手:     在style中添加cursor:pointer 实现鼠标悬停变成小手样式     实例:         其他参数: cursor语法: cursor : auto | crosshair | default | hand | move | help | wait | tex...

Yupoo(又拍网)的系统架构

Yupoo!(又拍网) 是目前国内最大的图片服务提供商,整个网站构建于大量的开源软件之上。以下为其使用到的开源软件信息: 操作系统:CentOS、MacOSX、Ubuntu 服务器:Apache、Nginx、Squid 数据库:MySQLmochiweb、MySQLdb 服务器监控:Cacti、Nagios、 开发语言:PHP、Python、Erlang、Java、Lua 分布式计算:Hadoop...

创建一个Servlet项目流程(入门)

版本 IDEA 2020.2 JDK1.8 apache-tomcat-9.0.36 项目流程 一、IDEA中新建JaveEE项目 项目起名,选择项目存放地址,点击finish创建成功 进入项目后,右键选择项目,选择add Framework Support 选择Web Application,点击OK 此时项目文件夹 在WEB-INF下创建两个目录classes和lib 按ctrl+alt+sh...

Docker部署SpringCloud ELK+RabbitMQ日志

Docker部署SpringCloud ELK+RabbitMQ日志  Im_Coder 原文:https://www.jianshu.com/p/f773f23096a9 一、效果图 image.png 二、ELK是什么? ELK由ElasticSearch、Logstash和Kiabana三个开源工具组成。 其中Elasticsearch是个开源分布式搜索引擎,它的特点有:分布式,索...