当前位置:   article > 正文

c语言创建局域网私人云盘,教你搭建个人/企业私有云盘-kodexplorer

局域网 云办公 源码 搭建

环境说明:

系统版本:CentOS 6.9 x86_64

软件版本:nginx-1.12.2

php-5.5.38

可道云kodexplorer4.37

1、 nginx 的编译安装

1.1 创建目录

mkdir -p /service/tools

mkdir /application

cd /service/tools

wget http://nginx.org/download/nginx-1.12.2.tar.gz 下载或者上传nginx包

1.2 解压

tar zxvf nginx-1.12.2.tar.gz

1.3 编译安装

yum install gcc gcc-c++ glibc -y #安装编译器

yum install pcre-devel zlib-devel openssl-devel –y

装pcre为了重写rewrite提供正则表达式库,装zlib为了gzip提供数据压缩用的函数库,装openssl为 Nginx 模块(如 ssl )提供密码算法、证书以及 SSL 协议等功能

C语言源码包,需要编译才能使用

编译安装三部曲

./configure(指定编译参数:安装目录及版本)

cd nginx-1.12.2

./configure --prefix=/application/nginx-1.12.2 --pid-path=/var/run/nginx.pid --user=nginx --group=nginx --with-http_ssl_module

./configure -help #查看帮助

生成Makefile文件

make

make是用来编译的,它从Makefile中读取指令,然后编译

cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/os/unix -I objs -I src/http -I src/http/modules \

-o objs/src/http/modules/ngx_http_geo_module.o \

src/http/modules/ngx_http_geo_module.c

make install

make install是用来安装的,它也从Makefile中读取指令,安装到指定的位置

[root@Web01 nginx-1.12.2]# cd /application/nginx-1.12.2/

[root@Web01 nginx1.12.2]# ls -1

conf #配置文件

html #网站 html 文件

logs #日志

sbin #二进制的执行文件

1.4 配置

创建软链接

ln -s /application/nginx-1.12.2 /application/nginx

ln -s /application/nginx/sbin/nginx /usr/bin/

useradd -M -s /sbin/nologin -r -u 88 nginx #创建用户

-M 不创建用户的HOME目录

-s shell 指定默认登录shell

-r 创建系统账户

-u uid 为账户指定一个唯一的UID

conf目录

fastcgi.conf 配合php

uwsgi_params 配合python

nginx.conf 主配置文件

mime.types 多媒体资源类型配置文件

最小化配置文件

grep -Ev '^$|#' nginx.conf.default >nginx.conf

[root@Web01 conf]# grep -Ev '^$|#' nginx.conf.default >nginx.conf

[root@Web01 conf]# cat nginx.conf

worker_processes 1; #工作进程数

events { #event模块

worker_connections 1024; #默认工作连接数

}

http { #http模块,nginx核心模块

include mime.types; #加载的多媒体资源类型配置文件

default_type application/octet-stream; #默认类型(16进制)

sendfile on; #优化配置选项

keepalive_timeout 65; #长连接超时时间65秒

server {

listen 80; #默认监听的端口

server_name localhost; #网站域名

location / { #网站站点根目录位置

root html; #网站文件

index index.html index.htm; #网站首页

}

error_page 500 502 503 504 /50x.html; #错误页面500,502.503.504返回50x.html

location = /50x.html {

root html;

}

}

}

1.5 启动

/application/nginx/sbin/nginx –t #语法检查并测试

/application/nginx/sbin/nginx #启动

/application/nginx/sbin/nginx -s reload #平滑重启,不影响用户访问

/application/nginx/sbin/nginx -s stop #关闭

/application/nginx/sbin/nginx -V #查看版本及安装的模块

启动后会生成几个temp目录

浏览器访问

8831a54cf5ba4505fbed6e5c4c1e3092.png

编译安装Nginx完成

2、编译安装php

2.1下载并安装相关编译器

mkdir -p /service/tools #创建目录

cd /service/tools/

wget http://mirrors.sohu.com/php/php-5.5.38.tar.gz #下载包

tar xf php-5.5.38.tar.gz #解压

yum install gcc gcc-c++ glibc -y #安装编译器,如果已经编译安装了nginx则不需要此步骤

yum install -y libxml2-devel curl curl-devel libjpeg-devel libpng-devel freetype-devel

安装编译时所需库

cd php-5.5.38 #进入php-5.5.38目录

2.2 编译安装 编译生成makefile

./configure

--prefix=/application/php-5.5.38

--with-jpeg-dir=/usr/lib64

--with-freetype-dir=/usr/lib64/

--with-curl

--enable-fpm

--enable-mbstring

--with-gd

--with-fpm-user=nginx

--with-fpm-group=nginx

make && make install

3、配置

[root@Web02 php-5.5.38]# ln -s /application/php-5.5.38 /application/php #创建软链接

[root@Web02 php-5.5.38]# ln -s /application/php/bin/* /usr/bin/ #创建命令软链接

[root@Web02 php-5.5.38]# cp php.ini-production /application/php-5.5.38/etc/php.ini

拷贝默认配置文件

[root@Web02 php-5.5.38]#

cp /application/php-5.5.38/etc/php-fpm.conf.default /application/php-5.5.38/etc/php-fpm.conf

拷贝默认php-fpm配置文件,php-fpm 启动进程数

4、启动

[root@Web02 php-5.5.38]# /application/php/sbin/php-fpm #启动php

[root@Web02 php-5.5.38]# netstat -lntup|grep 9000 #查看进程9000端口

tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 97399/php-fpm

5、配置nginx使其支持php

查看nginx.conf.default有关 php 的部分(65-71行),将此内容添加到nginx.conf中,并修改fastcgi_param指定script文件名documentrootdocumentrootfastcgi_script_name

可以在/application/nginx/conf/fastcgi.conf查看

65 #location ~ \.php$ {

66 # root html;

67 # fastcgi_pass 127.0.0.1:9000;

68 # fastcgi_index index.php;

69 # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;

70 # include fastcgi_params;

71 #}

[root@Web02 php-5.5.38]# cd /application/nginx/conf/

[root@Web02 conf]# vim nginx.conf

server {

listen 80;

server_name localhost;

index index.php index.html index.htm;

location / {

root html;

}

location ~ \.php$ {

root html;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME documentrootdocumentrootfastcgi_script_name;

include fastcgi_params;

}

}

}

这个配置的意思是 在浏览器中访问的.php文件,实际读取的是 $document_root(网站根目录)下的.php文件 -- 也就是说当访问127.0.0.1/index.php的时候,需要读取网站根目录下面的index.php文件,如果没有配置这一配置项时,nginx不回去网站根目录下访问.php文件,所以返回空白

配置项目中:include fastcgi_params; fastcgi_params 文件中含有各个nginx常量的定义,默认情况 SCRIPT_FILENAME = /scripts$fastcgi_script_name

检查语法nginx -t

6、配置网盘,下载解压可道云kodexplorer

[root@Web02 conf]# cd ../html/ #进入到站点目录

[root@Web02 html]# ls

50x.html index.html

[root@Web02 html]# rm -rf * #删除原有的站点文件

[root@Web02 html]# wget http://static.kodcloud.com/update/download/kodexplorer4.37.zip

下载

[root@Web02 html]# unzip kodexplorer4.37.zip #解压

[root@Web02 html]# nginx #启动nginx

浏览器访问

08becf11b679e497928ae54548dacc0f.png

根据提示操作

su -c 'setenforce 0' #关闭selinux,su -c 指定命令,用root执行

chmod -R 777 /var/www/html/ #按照提示修改权限

刷新页面重新访问,成功,设置管理员用户名和密码,进行登录及后续图形界面操作

86512890bc6b3febafee664db649c9e1.png

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号