1、更新第三方源并升级系统 (CentOS默认的标准源里没有nginx软件包)

1.1、安装CentOS第三方yum源

#安装下载工具wget
yum install wget #下载atomic yum源
wget http://www.atomicorp.com/installers/atomic #安装
sh ./atomic

1.2、升级CentOS系统

#更新yum软件包
yum check-update #更新系统
yum update

2、安装和配置防火墙

#配置防火墙,开启80端口、3306端口
vi /etc/sysconfig/iptables #(允许80端口通过防火墙)
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
#(允许3306端口通过防火墙)
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT 保存后重启防火墙:
/etc/init.d/iptables restart #重启防火墙使配置生效

注意 centos7 默认没有安装iptables,而是使用firewalld
具体可参考https://www.cnblogs.com/blueskyli/p/7218804.html

systemctl stop firewalld.service && systemctl disable firewalld.service

systemctl start firewalld.service && systemctl enable firewalld.service

同时使用firewalld来开放端口80和3306

添加

firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)

firewall-cmd --zone=public --add-port=1000-2000/tcp --permanent

重新载入
firewall-cmd --reload
查看
firewall-cmd --zone=public --query-port=80/tcp
删除
firewall-cmd --zone=public --remove-port=80/tcp --permanent

如果出现远程登录不上mysql Error 1130的情况,则

mysql -u root -p
vmware mysql>use mysql;
mysql>update user set host = '%' where user = 'root';
mysql>flush privileges;
mysql>select host, user from user
关闭SELinux:
临时关闭,在命令行输入:setenforce 0
修改配置文件:
sudo vi /etc/selinux/config
SELINUX=enforcing改为:
SELINUX=disabled

3、安装和配置PHP

3.1、配置安装包源

rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm
先安装apache:
yum install httpd
配置ServerName
vi /etc/httpd/conf/httpd.conf

<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com

DocumentRoot /var/www/html/edusoho/web
<Directory /var/www/html/edusoho/web>
# enable the .htaccess rewrites
AllowOverride All
Order allow,deny
Allow from All
</Directory>
ErrorLog /var/log/httpd/edusoho_error.log
CustomLog /var/log/httpd/edusoho_access.log combined
</VirtualHost>

service httpd restart

安装php

yum install php php-devel
重启apache使php生效
/etc/init.d/httpd restart
此时可以在目录:/var/www/html/edusoho/web下建立一个PHP文件
代码:
<?php phpinfo(); ?>

3.2、安装PHP和相关插件

yum install -y php55w php55w-cli php55w-curl php55w-fpm php55w-intl php55w-mcrypt php55w-mysql php55w-gd php55w-mbstring php55w-xml php55w-dom

3.3、修改PHP配置

#编辑php.ini , 将以下配置的值修改为1024M
vi /etc/php.ini post_max_size = 1024M
memory_limit = 1024M
upload_max_filesize = 1024M

3.4、配置PHP-FPM

#启动php-fpm
/etc/rc.d/init.d/php-fpm start
(以上命令有可能不好用)
yum install -y php-fpm
安装完成使用systemctl start php-fpm即可启动
#设置开机启动
chkconfig php-fpm on

4、安装MySql和创建EduSoho数据库

4.1、安装MySql

#询问是否要安装,输入Y即可自动安装,直到安装完成
yum install mysql mysql-server

首先CentOS7 已经不支持mysql,因为收费了你懂得,所以内部集成了mariadb,而安装mysql的话会和mariadb的文件冲突,所以需要先卸载掉mariadb,以下为卸载mariadb,安装mysql的步骤。

#列出所有被安装的rpm package 
rpm -qa | grep mariadb

#强制卸载,因为没有--nodeps
rpm -e --nodeps mariadb-libs-5.5.37-1.el7_0.x86_64

可参考这个link

https://www.linuxidc.com/Linux/2016-03/129683.htm

#启动MySQL
/etc/init.d/mysqld start #设为开机启动
chkconfig mysqld on #拷贝配置文件(注意:如果/etc目录下面默认有一个my.cnf,直接覆盖即可)
cp /usr/share/mysql/my-medium.cnf /etc/my.cnf #备注:默认安装结束,mysql的root密码为空

4.1、创建EduSoho数据库

#登录数据库
mysql -uroot -p
#输入:
CREATE DATABASE edusoho DEFAULT CHARACTER SET utf8 ;
GRANT ALL PRIVILEGES ON `edusoho`.* TO 'esuser'@'localhost' IDENTIFIED BY 'edusoho';
quit;

注意:这里为edusoho数据库创建了一个用户名,用户名为:esuser,密码为edusoho,在后面安装的第三步需要用到,不建议直接填写root账户。

5、下载和解压EduSoho

cd /usr/share/nginx
wget http://download.edusoho.com/edusoho-Version.tar.gz (注:将VERSION替换为当前EduSoho最新版本号,可从官网www.edusoho.com查询获取)
tar zxvf edusoho-Version.tar.gz
chown apache:apache edusoho/ -Rf

6、 安装和配置Nginx

yum install nginx     
 
#启动
service nginx start 
   
#设为开机启动
chkconfig nginx on vi /etc/nginx/nginx.conf 在http{}配置中加入: client_max_body_size 1024M;
vi /etc/nginx/conf.d/edusoho.conf

加入以下配置:

server {

listen 80;

server_name www.centos.edu;

root /usr/share/nginx/edusoho/web;

access_log /var/log/nginx/edusoho.access.log;

error_log /var/log/nginx/edusoho.error.log;

location / {

index app.php;

try_files $uri @rewriteapp;

}

location @rewriteapp {

rewrite ^(.*)$ /app.php/$1 last;

}

location ~ ^/udisk {

internal;

root /usr/share/nginx/edusoho/app/data/;

}

location ~ ^/(app|app_dev)\.php(/|$) {

fastcgi_pass   127.0.0.1:9000;

fastcgi_split_path_info ^(.+\.php)(/.*)$;

include fastcgi_params;

fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;

fastcgi_param  HTTPS              off;

fastcgi_param HTTP_X-Sendfile-Type X-Accel-Redirect;

fastcgi_param HTTP_X-Accel-Mapping /udisk=/usr/share/nginx/edusoho/app/data/udisk;

fastcgi_buffer_size 128k;

fastcgi_buffers 8 128k;

}

location ~* \.(jpg|jpeg|gif|png|ico|swf)$ {

expires 3y;

access_log off;

gzip off;

}

location ~* \.(css|js)$ {

access_log off;

expires 3y;

}

location ~ ^/files/.*\.(php|php5)$ {

deny all;

}

location ~ \.php$ {

fastcgi_pass   127.0.0.1:9000;

fastcgi_split_path_info ^(.+\.php)(/.*)$;

fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;

fastcgi_param  HTTPS              off;

include        fastcgi_params;

}

}
/etc/init.d/nginx restart   #重启nginx

7、安装和注意事项目

1 配置完成后,请使用www.centos.edu访问安装,填写安装必须信息即可

2在本地host文件添加 :   服务器ip www.centos.edu

3特别注意:以上包含ip,域名的地方请根据自己情况替换

4安装第二步,如果数据库链接不上,将数据库服务器改成localhost即可

5目录一般情况不需要更改

6一定要在配置文件里面把edusoho访问目录定位到edusoho/web,不然会出现问题

安装edusoho的更多相关文章

  1. Edusoho之LAMP环境搭建

    主要参考官方文档Ubuntu16.04+Apache+PHP+MySQL+EduSoho 安装教程LAMP环境按照如下搭建是没有问题的,本地虚拟机试验是完全没有问题的. 1.更新 sudo apt-g ...

  2. Edusoho之LNMP环境搭建

    1.更新 sudo apt-get update sudo apt-get upgrade 2.安装Nginx sudo apt-get install nginx 3.安装php sudo apt- ...

  3. day64:nginx模块之限制连接&状态监控&Location/用nginx+php跑项目/扩展应用节点

    目录 1.nginx模块:限制连接 limit_conn 2.nginx模块:状态监控 stub_status 3.nginx模块:Location 4.用nginx+php跑wordpress项目 ...

  4. 第十二章 LNMP架构之分离数据库

    一.课程回顾 1.搭建LNMP环境 1.配置官方源2.yum安装依赖3.yum安装nginx4.配置nginx5.创建用户6.启动并加入开机自启​7.上传安装包8.解压安装包9.卸载旧版本PHP10. ...

  5. EduSoho程序上线实录

    1.1 修改配置文件 [root@web01 nginx]# cat /application/nginx/conf/extra/edusoho.conf server { listen 80; se ...

  6. 开源CMS系统Moodle对比中国本土化开源在线教育平台EduSoho

    这段时间研究了一下著名的开源课程管理系统Moodle,也了解了一下目前国内比较火的在线教育平台EduSoho,发现二者有诸多相似之处,但优势各异.接下来就简单对着两个平台做一下对比. 首先来说一下Ed ...

  7. Windows本地搭建Edusoho环境

    Windows搭建Edusoho比Linux还要轻松的多.因为有很多环境集成工具如xampp.wampserver.phpstudy等.基本上安装号wampserver工具,直接将edusoho项目扔 ...

  8. docker——容器安装tomcat

    写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...

  9. 网络原因导致 npm 软件包 node-sass / gulp-sass 安装失败的处理办法

    如果你正在构建一个基于 gulp 的前端自动化开发环境,那么极有可能会用到 gulp-sass ,由于网络原因你可能会安装失败,因为安装过程中部分细节会到亚马逊云服务器上获取文件.本文主要讨论在不变更 ...

随机推荐

  1. linux日常管理

    1.压缩和解压 tar压缩tar -czf hxl_product.tar.gz ./product tar解压tar -xzvf hxl_app.tar.gz z选项会将该压缩文件直接解压到目录,要 ...

  2. mysql 中语句执行的顺序以及查询处理阶段的分析

    原文链接:http://www.php.cn/mysql-tutorials-408865.html 本篇文章给大家带来的内容是关于mysql中语句执行的顺序以及查询处理阶段的分析,有一定的参考价值, ...

  3. Codeforces Round #424 (Div. 2, rated, based on VK Cup Finals) Problem F (Codeforces 831F) - 数论 - 暴力

    题目传送门 传送门I 传送门II 传送门III 题目大意 求一个满足$d\sum_{i = 1}^{n} \left \lceil \frac{a_i}{d} \right \rceil - \sum ...

  4. 【python011--数组2】

    一.从列表中获取元素 *跟数组一样,我们可以通过元素的索引值(index)从列表获取单个元素,注意,列表索引值是从0开始的 >>> member= ['尘封','冰点','无名',' ...

  5. PT,PX,DPI

    [iOS]查找数组NSArray中是否包含指定的元素 http://blog.csdn.net/zyq527758142/article/details/51278172 Dpi(每平方英寸像素数目) ...

  6. linux下安装tomcat和jdk

    1.现在的linux服务器一般自带jdk,先查询是否已经安装jdk rpm -qa | grep java rpm -qa | grep jdk 如上则是没有安装,可以直接跳到步骤X,安装jdk.否则 ...

  7. dart基础语法

    .关于 runApp() 上面的实例代码中使用了 runApp() 方法,runApp 方法接收的指定参数类型为 Widget,即: runApp(Widget).在 Flutter 的组件树(wid ...

  8. shell 编程中的 知识点 - 突然一下子就明白很多东西了

    按自己的意愿生活, 而且是::: 要敢于按自己的意志去活! 那是一种胆量和勇气!! shell中的结构, 只有选择(实际上if条件也是一种选择结构)和循环, 都是用关键字来替代 大括号的. 如: if ...

  9. Docker 命令收集

    Docker 命令收集 1.删除所有容器 docker rm $(docker ps -a -q) 2.删除所有镜像 docker rmi $(docker images -q) 3.启动镜像 doc ...

  10. (转)Awesome Object Detection

    Awesome Object Detection 2018-08-10 09:30:40 This blog is copied from: https://github.com/amusi/awes ...