centos 7 部署Thinksns
因为Thinksns是PHP项目,我们这里部署需要搭建Apache+mysql+php环境。
1.mysql的安装,这里使用yum安装可以解决很多依赖包的问题。由于centos 7 没有自带mysql的yum源,所以不能直接安装,需要创建yum安装详细教程如下:
http://www.cnblogs.com/SoEasyO-O/p/7068156.html
添加好yum源之后运行如下命令:
yum install mysql-community-server
根据系统提示下载并安装mysql。
2.安装Apache的httpd。
运行以下命令:
yum install httpd
根据系统提示下载并安装mysql。
运行以下命令:
service httpd start
启动httpd服务。
运行一下命令:
yum.repos.d]# firewall-cmd --add-port=/tcp --permanent
打开80端口。
firewall-cmd --reload
重新加载防火墙。
在浏览器输入服务器的IP地址结果如下图:

说明Apache已经正常工作。
3.安装PHP。
运行一下命令:
yum install php*
根据系统提示下载并安装php。(也可以只安装需要的包,这里为了简单易懂所以用php* ,只要无脑按装就可以了。)
安装完成后要重启httpd服务
service httpd restart
4.部署Thinksns
下载地址: http://korean.zhibocloud.cn/tskaiyuan.zip
解压文件后将整个文件夹放到
/var/www/html
在浏览器中输入:服务器的IP地址/thinksns 例如:192.168.1.104/thinksns

点击同意协议并安装

给文件夹分配读写权限。
chmod -R /var/www/html/thinksns/data/
chmod -R /var/www/html/thinksns/install/
chmod -R /var/www/html/thinksns/config/
mkdir /var/www/html/thinksns/storage
chmod -R /var/www/html/thinksns/storage/
这里分配777 权限操作最为简单,但是会有安全隐患,可以根据自己的需要分配相应的权限。
在最新的Thinksns中没有storage文件夹需要自己创建。
分配好权限的文件夹如下:

再次看下安装向导页面:

还是没有权限,这是因为在centos 7上有SELinux的存在,分配权限后不会生效。
需要关闭SELinux。操作如下。
vi /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=disabled
#这里将原来的enforcing改为disabled
# SELINUXTYPE= can take one of three two values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are protected.
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
关闭SELinux后重启系统。重启系统后记得启动httpd服务,当然也可以设为开机启动。

所有配置都已经验证通过。

根据提示填写相关信息。

点击下一步完成安装。

大功告成,初学者分享一点经验,有什么不足的地方请多多指教。
centos 7 部署Thinksns的更多相关文章
- CentOS 7部署flume
CentOS 7部署flume 准备工作: 安装java并设置java环境变量,在`/etc/profile`中加入 export JAVA_HOME=/usr/java/jdk1.8.0_65 ex ...
- CentOS 7部署Kafka和Kafka集群
CentOS 7部署Kafka和Kafka集群 注意事项 需要启动多个shell脚本交互客户端进行验证,运行中的客户端不要停止. 准备工作: 安装java并设置java环境变量,在`/etc/prof ...
- 在centos中部署jenkins
在centos中部署jenkins,需要的环境:安装jdk,Apache-tomcat 这两步我前面文章里已写,再次忽略 到官网下载最新的jenkins 我这里的是 jenkins.war 把该文件 ...
- Centos 上部署 tomcat7
在 Centos 上部署 tomcat7 搜索tomcat,选下面红色框框的官网 选箭头指着的版本7, 选 tar.gz 格式, 下载完压缩包,使用 ftpx 工具,放在 centos 的 /opt ...
- SSM 项目从搭建爬坑到 CentOS 服务器部署 - 速查手册
SSM 项目从搭建爬坑到 CentOS 服务器部署 - 速查手册 提示: (1)CSDN 博客左边有操作工具条上有文章目录 (2)SSM 指 Spring,Spring MVC,MyBatis Mav ...
- CentOS上部署Django+Nginx+Uwsgi环境
在CentOS上部署Django+Nginx+Uwsgi环境 奇谭 2016-09-01 评论 Linux python django nginx uwsgi VirtualEnv的作用:创建隔 ...
- Linux CentOS下部署Java Web项目
本文讲解如何在Linux CentOS下部署Java Web项目的步骤. 一.环境准备: (1)Linux CentOS (2)apache-tomcat-9.0.10 (3)XShell 二.启动t ...
- CentOS 7 部署 ASP.NET Core 应用程序
原文:CentOS 7 部署 ASP.NET Core 应用程序 看了几篇大牛写的关于 Linux 部署 ASP.NET Core 程序的文章,今天来实战演练一下.2017年最后一个工作日,提前预祝大 ...
- 在CentOS上部署kubernetes1.9.0集群
原文链接: https://jimmysong.io/kubernetes-handbook/cloud-native/play-with-kubernetes.html (在CentOS上部署kub ...
随机推荐
- 《Android进阶》之第七篇 NDK的使用
<Android进阶>之第一篇 在Java中调用C库函数 这一篇列举的方法是在NDK没有出来时候用的方式 在Android发布NDK之后,可以这样使用 一.首先下载android-ndk ...
- C# 关于操作datatable的列名和删除某一列的数据
1.获取一个数据集表 DataTable dt = selectDEGS(type, words, KUser); 2.删除某一列 dt.Columns.Remove("TaskID&quo ...
- Eclipse导入项目常见问题----服务器版本问题02
*有时导入项目时,我们打开build时会看到服务器包上有一个红色的×,和这里JRE System jar包显示的是一个样的,左侧有个红色叉: 解决办法 打开到如下界面,解决步骤如下图: 打开该界面方式 ...
- 演讲小技巧iPhone+Keynote
原文发布在简书上:http://www.jianshu.com/p/a45538ca611f 今天在公司里分享了一个技术雷达里关于 ECMAScript 2017 的小 Session,分享加问答总共 ...
- Django中的枚举类型
一.枚举类型示例 枚举类型可以看作是一种标签或是一系列常量的集合,通常用于表示某些特定的有限集合,例如星期.月份.状态等.Python 的原生类型(Built-in types)里并没有专门的枚举类型 ...
- android蓝牙学习
学习路线 1 蓝牙权限 <uses-permission android:name="android.permission.BLUETOOTH" /> <uses ...
- 每天一个JS 小demo之树菜单。主要知识点:DOM方法综合运用,递归运用
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"& ...
- 用PHP和Ajax进行前后台数据交互——以用户登录为例
很多网站中都有用户登录系统,要完成用户的注册和登陆,就一定要用到前后台的数据交互.在这里以简单的用户注册和登陆为例介绍一下前后台交互的大致流程. 首先,我们来做一个简单的登陆界面. 这里为了方便我使用 ...
- Linux crontab定时执行任务命令格式与详细例子
基本格式 : * * * * * command 分 时 日 月 周 命令 第1列表示分钟1-59 每分钟用*或者 */1表示 第2列表示小时1-23(0表示0点) 第3列表示日期1-31 第4列表示 ...
- JS获取浏览器类型和版本号
JS获取浏览器类型和版本号,增加了IE11的判断. 2015/7/5更新: 简化代码逻辑 var zbrowser = {} var ua = navigator.userAgent.toLowerC ...