Toggle navigation


ASP.NET镜像手册

Version IIS7.0

由Websoft9提供的PHP&.NET环境以IIS作为应用服务器,安装了IIS,PHP,MySQL,.NET等组件,帮助您在Window服务器下快速的安装部署PHP&.NET应用程序。

PHP&.NET On IIS是基于IIS作为应用服务器的基础运行环境,用于在Windows服务器上部署PHP或ASP.NET程序,并且保持较高的兼容性。IIS即Windows®Server的Internet信息服务,它是一种灵活,安全和可管理的Web服务器,用于托管Web上的任何内容。 从媒体流到Web应用程序,IIS的可扩展和开放的架构已经准备好处理最苛刻的任务。由于IIS的可视化配置界面,使得在此环境中增加和管理网站变得非常容易。


本文档适用于通过主流云市场购买和部署了Websoft9镜像的用户,文档内容重点指导用户进行安装配置、系统基本操作和常见运维问题处理。

主流云平台包括:阿里云、腾讯云、百度云、华为云、Azure、青云

Websoft9的镜像由运行环境、数据库和运维面板三个部分组成,以最新版本镜像为例包括:

版本与路径

下面重点列出使用本环境中所需的一些配置和目录说明(*星号为版本号)

网站目录
默认根目录:C:\inetpub\wwwroot
镜像根目录下的初始化index文件仅为引导之作用,建议自行删除

运行环境(PHP多版本,.NET4.6.1,IIS7.0)

PHP安装位置:C:\websoft9 已经安装php5.4/5.5/5.6.7.0四个版本,并可以随意切换
PHP安装位置配置文件: C:\websoft9\php-*\php.ini
PHP Manager for IIS是开一个可视化的PHP管理与配置工具
.NET安装位置:C:\Windows\Microsoft.NET

数据库(MySQL,phpMyAdmin)
MySQL数据目录: C:\websoft9\mysql-*\data
MySQL配置文件: C:\websoft9\mysql-*\my.ini
phpMyAdmin目录:C:\websoft9\phpmyadmin
MySQL-Front是一个免费的可视化MySQL客户端管理工具

运维面板(9Panel)
9Panel是Websoft9根据镜像用户的习惯和技术能力而研制的轻量级面板,以帮助用户快速掌握程序安装和运维工作
访问路径:http://ip/9panel

配置要求

本镜像最低配置建议为1核1G

  1. 镜像需要与服务器配套使用,获取Websoft9的镜像有两种方式:
    方式一:若没有可用的云服务器,登录主流云厂商的云市场,找到由Websoft9提供的“PHP on IIS环境”相关免费镜像,点击“购买”(同时会配套购买云服务器,若只打算试用请选择“按量”方式购买,实现按小时使用,接近免费)
    方式二:登录到云厂商的控制面板,找到可用的云服务器,通过更换系统盘(重装镜像)的方式
  2. 待镜像购买或更换完成后,镜像会自动安装到配套的云服务器上,当云服务实例处于“运行中”后,通过浏览器访问网址 http://服务器公网IP/9panel,正常会出现如下界面:
  3. 如果浏览器访问以上网址没有任何反应,请检查您的安全组设置,确保80端口是开放的。

应用程序安装、使用和维护中需要用到二种账户:

1、MySQL数据库默认账号和密码:root/123456,管理地址:http://ip/phpmyadmin


2、Windows服务器操作系统账号和密码

  • 账号:administrator
  • 密码:是安装镜像的时候客户自行设置的,若不记得此密码,请登录云服务器后台,修改服务器密码,重启后生效
  • 登录:通过本地PC的远程桌面连接工具,参考(服务器通用文档-Windows远程管理与FTP

IIS环境中部署网站主要分为5个步骤:
上传网站代码->配置域名(非必要)->增加网站对应的数据库(非必要)->完成安装向导

注意:部署一个网站还是多个网站、有无域名这两种情况对应的部署操作细节略有不一样,下面分别说明:

场景一:服务器只安装一个网站

如果您打算此服务器上只部署一个网站或应用,建议采用此方式:

  1. 远程桌面到Windows服务器,将网站源文件拷贝到根目录
  2. 如果没有可用域名,请直接通过 http://公网IP  的方式来访问应用
  3. 如果有可用的域名,请完成《域名配置》后通过 http://公网IP  的方式来访问应用
  4. 如果在安装向导过程中提示数据库无法自动创建,需要通过http://ip/phpmyadmin 创建数据库

网站默认根目录为:C:\inetpub\wwwroot

场景二:服务器部署多个网站(无域名)

无域名情况下,以部署两个网站为例,具体操作如下:

  1. 远程桌面到Windows服务器,将第一个网站目录上传到根目录下面,假设应用程序目录命为“mysite1
  2. 通IIS增加一个虚拟目录或应用程序
  3. 通过http://ip/mysite1 的方式来访问应用,即可访问mysite1
  4. 如果在安装向导过程中提示数据库无法自动创建,需要通过http://ip/phpmyadmin 创建数据库

安装第二个网站mysite2,操作步骤同样

网站默认根目录为:C:\inetpub\wwwroot

场景三:服务器部署多个网站(共用一个域名)

共用一个域名情况下(即每个网站都打算以 http://域名/mysite1 这样的方式访问),以部署两个网站为例,具体操作如下:

  1. 远程桌面到Windows服务器,将第一个网站目录上传到根目录下面,假设应用程序目录命为“mysite1
  2. 通IIS增加一个虚拟目录或应用程序
  3. 完成《域名配置》后通过 http://域名/mysite1 的方式来访问应用
  4. 如果在安装向导过程中提示数据库无法自动创建,需要通过http://ip/phpmyadmin 创建数据库

安装第二个网站mysite2,操作步骤同样

网站默认根目录为:C:\inetpub\wwwroot

场景四:服务器部署多个网站(多个域名)

多个域名下(即每个网站都有自己的域名),以部署一个网站为例(假设域名为www.abc.com),具体操作如下:

  1. 远程桌面到Windows服务器,将第一个网站目录上传到根目录下面,假设应用程序目录命为“mysite1”
  2. 提前将您的域名www.abc.com解析到服务器公网IP地址,并确保已经解析成功
  3. 打开IIS-网站-添加网站,参考下图完成路径、域名填写,然后保存
  4. 通过 http://域名/ 的方式来访问应用
  5. 如果在安装向导过程中提示数据库无法自动创建,需要通过http://ip/phpmyadmin 创建数据库

安装第二个网站mysite2,操作步骤同样

网站默认根目录为:C:\inetpub\wwwroot

管理Windows系统,其实通过远程桌面登录到Windows服务上,通过拷贝粘贴就可以完成文件管理,无需FTP。

如果是多人使用Windows,需要使用FTP的话,请参考如下文档:

9Panel是Websoft9公司自主研发的快捷面板工具,9Panel面板主要是集成数据库管理工具、系统运维工具、文档和支持服务入口,重点在于连接知识库和服务,几乎不会占用系统资源,也不会对系统文件进行任何修改。

通过chrome或Firefox浏览器访问:http://ip/9panel,即可进入面板页面。

如果没有完成应用程序的安装,请根据面板的提示完成应用程序的安装。

WAMP镜像默认安装了可视化MySQL管理工具phpMyadmin。 如何使用PhpMyAdmin数据库?

  1. 通过本地Chrome或Firefox浏览器,访问:http://服务器公网IP/9panel
  2. 点击左侧菜单的“数据库管理”项,会进入“登录PhpMyAdmin”链接
  3. 选择您需要的语言,然后输入root和对应的密码,然后登录到系统中

常见的数据库相关操作包括: 修改root密码、创建数据库、创建用户和权限设置、导入和导出等,具体参考《MySQL文档-PhpMyAdmin常见操作》

域名设置分为两个步骤:

步骤1:域名控制台解析域名

如果您的域名备案(大陆之外无需备案),可以通过云厂商的域名控制台进行域名解析,操作如下:

  1. 登录域名控制台->域名解析,进入解析设置界面(以阿里云为例)
  2. 增加一条A记录,主机记录那里填写二级域名的前缀(如www,shop,test等)或通配符@,记录值填写您的服务器公网ip地址,保存
  3. 域名解析成功,等待解析生效(不同的厂商解析生效时间不一样,1分钟-24小时不等)

注意:解析生效之后,本地访问可能由于缓存问题导致仍然没有生效,请清空浏览器缓存,然后通过CMD命令行刷新本地DNS操作

步骤2:编辑网站绑定

请远程登录到Windows服务器后,修改IIS下对应的网站的域名绑定,具体如下:

  • 打开IIS,右键点击需要配置域名的网站,选择“编辑绑定”,系统弹出网站绑定列表。选择一个没用绑定域名的网站后,点击“编辑” 按钮
  • 在主机名处填写域名,然后保存
  • 需要增加多个域名,请在第一步选择“添加”按钮

说明:如果你计划在服务器上增加多个应用,本步骤是必要的

也许你希望将网站根目录设置到D盘或不喜欢现在根目录的位置,这个时候就需要修改网站默认根目录了。WAMP环境的根目录是可以被修改的,具体只需2个步骤:

  • 打开IIS,邮件点击Default Web Site,依次选择管理网站-高级设置,
  • 将物理路径修改为新的路径即可
  • 重启IIS后生效

 

使用PHP应用程序的时候,php组件的启用或停用、邮件设置、上传文件大小等控制都会涉及修改php配置文件。IIS集成了一个PHP配置管理器。

点击一个网站,右侧的IIS配置项中会显示PHP Manger项,点击就进入了一个PHP可视化管理界面

实例:如何切换PHP版本?

本镜像默认安装了PHP5.4/5.5/5.6/7.0四个版本,完全支持一键切换,具体切换步骤如下:

  1. 选择需要管理PHP版本的网站,然后打开PHP Manager,点击“Change PHP Version”
  2. 弹出的版本下拉列表中,选择一个版本
  3. 重启IIS后生效

注意:PHP版本影响范围为一个网站或网站中的应用程序,没有整个IIS全局PHP版本设置,这样大大的方便了多版本的应用访问。

实例:如何安装PHP扩展?

IIS+PHP的组合安装扩展,比较容易,具体如下:

  1. 选择需要管理PHP版本的网站,然后打开PHP Manager,点击“Add an Extension”
  2. 弹出的对话框中上传php扩展文件(.dll)
  3. 重启IIS后生效

注意:PHP版本影响范围为一个网站或网站中的应用程序,没有整个IIS全局PHP版本设置,这样大大的方便了多版本的应用访问。

实例:如何修改上传文件大小限制?

通过Windows远程桌面修改php.ini 如下的部分

; Maximum size of POST data that PHP will accept.
post_max_size = 16M
; Maximum allowed size for uploaded files.
upload_max_filesize = 16M

保存后,重启IIS

实例:如何修改系统最大响应时间?

我们在运行应用程序的时候,常常会等待很长的时间之后,却收到这样的错误提示 “Maximum execution time of 30 seconds exceeded”。这种情况下就需要通过修改the max_execution_time(最大执行响应时间)的值来解决这个问题。

方法一(推荐): 通过修改php.ini 如下的部分

; Maximum execution time of each script, in seconds
; http://php.net/max-execution-time
; Note: This directive is hardcoded to 0 for the CLI SAPI
max_execution_time = 90
; Maximum amount of time each script may spend parsing request data. It's a good
; idea to limit this time on productions servers in order to eliminate unexpectedly
; long running scripts.

方法二: 如果应用程序支持 .htaccess,请修改它:

<IfModule mod_php5.c>
php_value max_execution_time 90
</IfModule>

保存后,重启IIS服务

无法连接数据库问题

php5.5和php5.4版本中数据库连接扩展建议选择php_mysqli,而php_mysql禁用。如果两个都启用,容易导致数据库连接错误(在安装wordpress过程中发现此问题)

如何配置伪静态?

本镜像默认安装了针对于IIS伪静态设置的“URL重写”组件,下面以Wordpress为例描述如何设置伪静态:

  1. 进入IIS后选择具体的网站,打开URL重写工具
  2. 依次添加规则
  3. 重启IIS后生效

修改网站配置之后,有时候需要完成相关服务的启动和停止

IIS重启

进入IIS,点击主机名称,右侧的操作就会显示重启启动,停止等操作

MySQL重启

在“开始”-> “管理工具”->“服务”中重启Mysql服务。

网站技术日新月异,更新升级是维护工作之一,长时间不升级的程序,就如长时间不维护的建筑物一样,会加速老化、功能逐渐缺失直至无法使用。镜像完整的升级包括:操作系统补丁升级、运行环境补丁漏洞升级和应用程序升级三个部分。

应用软件的升级

应用软件的升级请根据具体软件而定,可供参考的例子包括:

网站的定期备份和重要操作之前的备份工作(如系统升级或重要修改)无比重要,可以做到防范于未然,让发生了意外而能够进行复原,这是网站运维工作的重中之重。 镜像的备份有基于服务器快照自动备份、手动本地备份方式,两种凡是各有利弊,建议结合起来使用

服务快照自动备份

云服务器厂商都会提供一个叫“快照”的功能,快照是针对于服务器的磁盘来说的。快照工具可以记录指定时间点硬盘的数据,全部备份起来,并可以实现一键恢复。 如果您对磁盘进行了自动的快照设定,如下场景您便可以比较从容的面对: 1、工作了几天的成果,被误删了 2、黑客把把网站网站弄的面目全非 3、现在的内容已经乱七八糟了,我要回到一个正常的服务器状态 做了快照备份,一键恢复到备份时间点的状态。也就是现场还原,很好的功能。 不同的云厂商快照设置稍有差别,具体参考:

手工本地备份

手工本地备份主要是通过下载应用程序文件和备份导出数据库文件,建议备份周期每月一次,备份文件保存6个月左右。下面就具体的备份操作进行说明:

  1. 远程到Windows服务器,将网站目录完整的拷贝到本地(建议压缩后再拷贝)
  2. 通过浏览器进入PhpMyAdmin(网址:http://服务器公网ip/phpmyadmin),进入数据库管理界面
  3. 左侧菜单中选择所需的数据库,顶部导航栏上选择“导出”标签 
  4. 选择导出方式和格式(建议SQL),点击“执行”,导出文件后下载到本地
  5. 将程序文件和数据库文件放到同一个文件夹,根据日期命名,备份工作完成

本文档由长沙网久软件有限公司原创,为了保证文档的严肃性和可用性,任何人不得盗用或修改后二次分发。需转载请标注来源,否则我们保留给予法律追究的权利。

我们会定期更新文档,请访问在线文档以获取最新版本

本文档在线地址:http://docs.websoft9.com/xdocs/phpiis-image-guide/
合作或技术支持:http://www.websoft9.com