安裝edusoho


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,不然會出現問題


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM