CentOS 6.x + Nginx + PHP + MySQL + EduSoho[文档]

参考:http://www.qiqiuyu.com/course/20/task/797/show
切记:我们的edusoho访问目录是edusoho/web,只有在nginx或者Apache配置里面把根目录定位到web目录下,才不会出现奇怪的问题,否则就会出现图片不能显示或者文件无法上传的问题。

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 重启防火墙使配置生效 
关闭SELinux:临时关闭,
在命令行输入:setenforce 0
修改配置文件:sudo vi /etc/selinux/configSELINUX=enforcing
改为:SELINUX=disabled

3、安装和配置PHP
3.1、配置安装包源

rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm

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 

设置开机启动

chkconfig php-fpm on

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

4.1、安装MySql
询问是否要安装,输入Y即可自动安装,
直到安装完成

yum install mysql mysql-server

启动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,不然会出现问题

你可能感兴趣的:(CentOS 6.x + Nginx + PHP + MySQL + EduSoho[文档])