- 安装过程概述
这部分介绍如何通过Sitecore CMS 的ZIP文件安装Sitecore。
安装Sitecore的实例:
- 安装Microsoft .NET Framework 4.5.
- 确认IIS已经开启ASP.NET
- 为项目选择一个目录,例如
C:\InetPub\wwwroot\ProjectName.
- 解压.zip文件,创建如下目录
C:\InetPub\wwwroot\ProjectName\Website
C:\InetPub\wwwroot\ProjectName\Data
C:\InetPub\wwwroot\ProjectName\Databases
- 设置目录的权限;参见:XXXX
- 把license.xml文件放到/Data目录下,/Data目录的位置在web.config文件中配置。
<sc.variable name="dataFolder" value="/data" />
这个设置必须改为绝对目录,比如:
C:\InetPub\wwwroot\ProjectName\Data
- 把/Database目录的数据库文件导入到SQL Server.
- 编辑/Website/App_config目录下的ConnectionStrings.config文件。
配置每个数据库的连接,例如:
<add name="core" connectionString="user id=_sql_server_user_;password=_user_password_;Data Source=_sqlserver_;Database=_core_database_name_" />
- 在IIS中配置站点。参见:XXXX
- 配置浏览器
- 启动浏览器,访问http://ProjectName/sitecore
你应该看到Sitecore的登陆画面:
默认管理账户Admin的密码是b。
- 配置目录和目录权限
- 某些浏览器请求(通常目录查找和静态资源)是通过匿名网络用户的权限执行的。这个用户需要有/Website目录下所有文件、目录、子目录的Read权限。
如下表格中包含在不同的IIS服务器下匿名用户的默认名称。
IIS version |
Default anonymous Internet user account name |
7,7.5,8.0,8.5 |
IUSR |
如果IIS没有配置使用默认的IUSR账户来处理匿名用户的请求或者匿名用户的授权没有开启,那么上述的权限应该授权给相应的账户。
- 文件系统授权给ASP.NET 请求
Sitecore CMS执行请求获取ASP.NET资源和所有的.NET代码运行在已经授权账户的应用程序中,并且该应用已经在web站点的应用程序池中标示。
这个账户需要/Websie 和 /Data目录下的所有文件、目录和子目录的Modify权限。
下面表格中包含在IIS不同版本中处理ASP.NET请求的默认账户。
IIS version |
Default ASP.NET account name |
7 |
NETWORK SERVICE |
7.5 |
NETWORK SERVICE |
8.0 |
NETWORK SERVICE |
8.5 |
NETWORK SERVICE |
如果选择了一个不同的账户来处理ASP.NET请求,那么你需要给这个账户授予Modify的权限。
- 文件系统权限给系统文件夹
大多数这些权限由IIS自动授权所有ASP.NET 应用程序 为IIS_IUSRS安全组的成员。
然而,某些环境必须手动为以下系统位置的应用程序池标识权限。
Default location |
Required permissions |
Comments |
%WINDIR%\temp\ |
Modify |
|
%WINDIR%\Globalization\ |
Modify |
Required for registering custom languages by the .NET Framework correctly |
%PROGRAMDATA%\Microsoft\Crypto |
Modify |
Required for storing cryptographic keys used for encrypting/decrypting data |
注意:ASP.NET或IUSR账户需要修改\temp文件的访问权限,用于安装Sitecore CMS。
这些变量有以下默认值:
Variable |
Default value |
%WINDIR% |
C:\Windows |
%PROGRAMDATA% |
C:\ProgramData for IIS 7 and later |
- 文件系统权限给SQL Server Files
如果使用SQL Server,已经配置的账户运行SQL server应用程序需要可以完全访问/Database目录,以及目录中包含的MDF和LDF数据库文件。通常,SQL Server应用程序在NEXTWORK SERVICE账户的上下文中运行。
- Windows注册表权限
Sitecore CMS包含一个内置的功能,用于读取和更新Winedows性能计数器,性能计数器用于Sitecore应用程序的监控和故障排除。
这个功能需要访问Windows注册表的keys,这种访问可以被授予应用程序池标识为内置Performance Monitor User 组的成员。
注意:如果必要的注册表权限没有被授权,当应用程序试图访问Windows 性能计数器时,会出现Access to the registry key 'Global' is denied”错误,并写道Sitecore log文件中。
为了避免错误,你必须防止Sitecore更新性能计数器。在web.config文件中把Counters.Enabled设置为false。
添加账户到用户组
使用net localgroup命令,添加一个Windows账户到用户组。
例如,增加NETWORK SERVICE账户到Performance Monitor Users组,在Sitecore CMS WEB 应用程序的服务器上执行如下命令:
net localgroup "Performance Monitor Users" /add "NETWORK SERVICE"
- 配置IIS
下面列出了操作系统对应的IIS版本:
- IIS 7 – Windows Server 2008, Windows Vista
- IIS 7.5 – Windows Server 2008 R2 SP1, Windows 7
- IIS 8 – Windows Server 2012, Windows 8
- IIS 8.5 – Windows Server 2012 R2, Windows 8.1
- IIS 7,7.5,8,8.5
在IIS中为Sitecore创建一个应用程序池。
- 启动IIS Manager。
- 在Connections面板中,选择Application Pools。
- 在Applications Pools上点击右键,选择Add Application Pool
- 在Add Application Pool会话中,输入如下信息:
Field |
Value |
Name |
ProjectNameAppPool |
.NET Framework version |
4.0 XXXXXX |
Managed pipeline mode |
Integrated |
- 点击OK。
- 在Application Pools面板中,选择刚才创建的应用程序池。
- 在Action面板中,点击Advanced Settings。
- 代开Advanced Settings对话框:
- 设置.NET Framework的版本为4.0
- 设置Identity设定为内置账户,选择ApplicationPoolIdentity或NetworkService。
- 确保Maximum Worker Processes设置为1.
- 设置Load User Profile为True.
创建Web站点
配置Web站点:
- 启动IIS Manager。
- 在Connections面板中,展开Sites。
- 右键点击Site,然后点击Add Website.
- 在Add Website对话框中,填写必要的字段,如下:
Field |
Value |
Site name |
ProjectName |
Application Pool |
ProjectNameAppPool |
Physical path |
C:\InetPub\ProjectName\Website |
Host name |
Projectname |
- 点击Ok。
- 打开hosts文件 - C:\Windows\System32\drivers\etc - 并且增加如下行:
127.0.0.1 projectname
现在你可以在浏览器中输入http://projectname访问你的web站点。
限制匿名用户访问
你应该防止匿名用户访问下面的文件夹:
- /App_Config
- /sitecore/admin
- /sitecore/debug
- /sitecore/shell/WebService
例如,限制匿名访问/App_Config文件夹
- 打开IIS
- 在Connections面板中,找到你的Sitecore站点并且选择/App_Config文件夹
- 在App_Config Home面板中,双击Authentication,为这个文件夹设置身份验证。
- 在Authentication面板中,确保Anonymous Authentication是禁用。
- 重复2-4步,可以设置其他文件夹的安全性。
- 重启IIS。
- Microsoft SQL Server Configuration
当你安装Microsoft SQL Server时,服务器身份验证选择Mixed Model模式。
- 为Sitecore CMS 数据库 创建数据库登录名(SQL Server 2008 和 2012)
- 启动SQL Server Management Studio
- 确保Sitecore 数据库已经连接。
- 在Object Explorer面板中,展开Security 文件夹
- 右键点击Logins文件夹,点击New Login,创建一个新的登录名。
- 在Login-New窗口中,选择General页和具体的登录名。
- 选择SQL Server authentication选项,并且取消User must change password at next login单选框。
- 选择User Mapping页,在User mapped to this login区域,选择Sitecore database。
- 在Database role membership for 区域,选择下列选择框:
对于Master和Web 数据库,选择如下:
- db_datareader
- db_datawriter
- Public
对于Analytics 数据库,选择如下:
- db_datareader
- db_datawriter
- public
对于Core 数据库,选择如下:
- db_datareader
- db_datawriter
- public
- aspnet_Membership_BasicAccess
- aspnet_Membership_FullAccess
- aspnet_Membership_ReportingAccess
- aspnet_Profile_BasicAccess
- aspnet_Profile_FullAccess
- aspnet_Profile_ReportingAccess
- aspnet_Roles_BasicAccess
- aspnet_Roles_FullAccess
- aspnet_Roles_ReportingAccess
- 点击OK,创建登录名。
- 授权存储过程执行权限
- 在SQL Server Management Studio窗口中,展开Databases。
- 右键点击Sitecore数据库,然后点击Properties。
- 在Database Properties窗口中,选择Permissions页,然后选择你想授权的用户。
- 在Users or roles区域,选择用户,在Explicit permissions for区域,在Grant列,给用户Execute权限。
重复这个过程,设置Sitecore的其他数据库。
- 卸载Sitecore CMS
卸载Sitecore之前,删除IIS Website 或者更新Website指向不同的目录,或者执行关闭IIS的命令,如下:
net stop w3svc.
删除Sitecore文件系统。
删除Sitecore实例所使用的所有远程或本地的数据库。
来源:oschina
链接:https://my.oschina.net/u/2006545/blog/351224