环境搭建
在宝塔面板中安装web环境必要的软件,包括:
web服务:Apache或Nginx(
本文以nginx为例讲解,
apache可以参考下
源码安装
的方式部署)
数据库:Mysql(推荐5.5/5.6)
PHP:PHP7.0/7.1/7.2都可以(本文以php7.0版本为例介绍如何安装)
其他软件工具,根据自己实际情况与需要来选择安装即可。
添加站点
登录宝塔面板,在站点管理中点击“添加站点”。
绑定多个域名时,每个域名占一行;
默认会在建站目录(/www/wwwroot/)下自动创建一个与域名同名的目录作为网站根目录;
数据库选用mysql,并设置数据库用户名和密码;
PHP选择
PHP7版本。(本文操作及配置都以PHP7为例)。
上传文件
注:下面以安装禅道开源版为例进行演示,如果您是要安装禅道专业版,需要先
安装ioncube
。
如果是新版本的宝塔,可以开启ioncube扩展:
下载禅道源码包,解压后得到zentaopms文件夹,将里面的所有文件上传到网站根目录下。
站点设置
1.运行名录设置
在宝塔面板的网站管理中,点击相应站点的设置按钮,在网站目录中设置运行目录。将运行目录指向/www目录,如下图:
2.配置文件设置
上面配置代码如下:
注:配置文件中端口号、域名、站点根目录等信息根据自己实际情况填写,切勿直接复制粘贴。
server
{
listen 80;
server_name www.zentao.com;
index index.php index.html index.htm default.php default.htm default.html;
root /www/wwwroot/www.zentao.com/www;
#SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则
#error_page 404/404.html;
#SSL-END
#ERROR-PAGE-START 错误页配置,可以注释、删除或修改
error_page 404 /404.html;
error_page 502 /502.html;
#ERROR-PAGE-END
#PHP-INFO-START PHP引用配置,可以注释或修改
include enable-php-70.conf;
#PHP-INFO-END
#REWRITE-START URL重写规则引用,修改后将导致面板设置的伪静态规则失效
include /www/server/panel/vhost/rewrite/www.zentao.com.conf;
#REWRITE-END
#禁止访问的文件或目录
location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)
{
return 404;
}
#一键申请SSL证书验证目录相关设置
location ~ \.well-known{
allow all;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
error_log off;
access_log off;
}
location ~ .*\.(js|css)?$
{
expires 12h;
error_log off;
access_log off;
}
access_log /www/wwwlogs/www.zentao.com.log;
error_log /www/wwwlogs/www.zentao.com.error.log;
}
注:默认是80端口,如果需要修改其他端口,需要在配置里修改
listen 端口号。
下面为nginx配置中引用文件的内容,仅供参考
1、enable-php-70.conf 文件中内容:
location ~ [^/]\.php(/|$)
{
try_files $uri =404;
fastcgi_pass unix:/tmp/php-cgi-70.sock;
fastcgi_index index.php;
include fastcgi.conf;
include pathinfo.conf;
}fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
2、fastcgi.conf 文件中的内容;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param REQUEST_SCHEME $scheme;
fastcgi_param HTTPS $https if_not_empty;
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;
# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param REDIRECT_STATUS 200;
3、pathinfo.conf 文件中的内容:
set $real_script_name $fastcgi_script_name;
if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
set $real_script_name $1;
set $path_info $2;
}
fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;
fastcgi_param SCRIPT_NAME $real_script_name;
fastcgi_param PATH_INFO $path_info;
3.伪静态设置
上面伪静态代码如下:
if (!-d $request_filename){
set $rule_0 1$rule_0;
}
if (!-f $request_filename){
set $rule_0 2$rule_0;
}
if ($rule_0 = "21"){
rewrite /(.*)$ /index.php/$1 last;
}
设置后,重启nginx。
安装禅道
注:
请确保域名已经解析到服务器上。
4、安装禅道过程中常见问题
:
(1)如果遇到如上图一样的报错,找到session配置页面,检查下储存模式是否是files,如果不是修改为files。(宝塔的新版本增加了这个功能,老版本没有这个功能的话,可以不用设置)。
(2)修改php.ini 配置文件的 session.save_path 的值为实际的目录 并给这个目录分配读写权限。 重启服务后刷新页面。
注意:session.save_path前的注释分号需要去掉
(3)修改网站-设置中PHP版本,session隔离选项为打开。
注:
备注1:如果模块或者目录检查不通过的话,请按照系统给出的提示进行操作以解决问题。
备注2:linux系统部署时需要注意selinux是否会限制目录操作权限,建议关闭后再安装。
安装成功后,即可使用上面设置的管理员账号登录禅道。