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. Java中断异常 InterruptedException 的正确处理方式

    你看到这篇文件可能是因为你已经调用了一个抛出 InterruptedException 异常的方法,并且需要以某种方式处理它. 首先,需要了解为一个方法为啥会 throws InterruptedEx ...

  2. 并发 ---- 6. IO 多路复用

    一.阻塞IO 1.代码示例 2.图形示例: 二.非阻塞IO 设置不阻塞(server.setblocking(False)),利用 try...except. 当被阻塞时, 执行except 事件, ...

  3. Linux使用——Linux命令——CentOS7防火墙使用

    注意:设置防火墙需要使用具有root权限的用户进入: CentOS 7.0默认使用的是firewall作为防火墙: CentOS 7.0使用systemctl来管理服务和程序,包括了service和c ...

  4. What is event bubbling and capturing?

    What is event bubbling and capturing? 答案1 Event bubbling and capturing are two ways of event propaga ...

  5. hihoCoder week2 Trie树

    题目链接 https://hihocoder.com/contest/hiho2/problems 字典树 #include <bits/stdc++.h> using namespace ...

  6. How can I move a MySQL database from one server to another?

    My favorite way is to pipe a sqldump command to a sql command. You can do all databases or a specifi ...

  7. Sublime text 3 汉化教程

    首先,需要安装Package Control 启动并进入sublime主界面,打开Sublime Text的控制台(快捷键 ctrl + ~) 然后我们到Package Control官方网站,复制s ...

  8. 【Hadoop 分布式部署 十 一: NameNode HA 自动故障转移】

    问题描述:    上一篇就是NameNode 的HA 部署完成,但是存在问题,问题是如果 主NameNode的节点宕机了,还是需要人工去使用命令来切换NameNode的Acitve 这样很不方便,所以 ...

  9. jsp的九大内置对象及作用

    内置对象名          类型                                   request           HttpServletRequest             ...

  10. poi导出excel 并处理插入网络图片 范例 处理文件下载中文乱码

    package com.inborn.inshop.controller.product; import com.inborn.inshop.common.util.DateUtils;import ...