私人网盘搭建教程
声明:仅供学习交流使用,如果侵犯到你的合法权利,请联系邮件删除,或评论。我将会在24h内删除。
一、准备阶段
请确认您的Linux是Centos7版本,本教程兼容Centos7!!!
您的系统已经连上了网络(本文默认您已经连上了网络)
教程中所用到的文件下载链接:https://pan.baidu.com/s/1CbS5scJvpV0sv2PEsCpvDQ?pwd=d5zq
提取码:d5zq
二、开始搭建
1.挂载阿里云yum源
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
清理旧yum
yum clean all
打包新yum
yum makecache
2.解决一些依赖性
yum install -y epel-release yum-utils unzip curl wget \ bash-completion policycoreutils-python mlocate bzip2
3.安装Apache web服务
yum install -y httpd
4.编写必要的配置文件
如果您的系统vim无法打开,请使用vi命令
vim /etc/httpd/conf.d/nextcloud.conf
以下是插入的内容
<VirtualHost *:80>
DocumentRoot /var/www/html/
ServerName your.server.com
<Directory "/var/www/html/">
Require all granted
AllowOverride All
Options FollowSymLinks MultiViews
</Directory>
</VirtualHost>
5.设置web服务开机自启运行
systemctl enable httpd.service
systemctl start httpd.service
6.安装PHP模块
yum install -y centos-release-scl
yum install -y rh-php72 rh-php72-php rh-php72-php-gd rh-php72-php-mbstring \ rh-php72-php-intl rh-php72-php-pecl-apcu rh-php72-php-mysqlnd rh-php72-php-pecl-redis \ rh-php72-php-opcache rh-php72-php-imagick
7.创建一些必要的链接
ln -s /opt/rh/httpd24/root/etc/httpd/conf.d/rh-php72-php.conf /etc/httpd/conf.d/
ln -s /opt/rh/httpd24/root/etc/httpd/conf.modules.d/15-rh-php72-php.conf /etc/httpd/conf.modules.d/
ln -s /opt/rh/httpd24/root/etc/httpd/modules/librh-php72-php7.so /etc/httpd/modules/
ln -s /opt/rh/rh-php72/root/bin/php /usr/bin/php
8.安装数据库
yum install -y mariadb mariadb-server
9.设置数据库开机自启动,并且手动启动数据库
systemctl enable mariadb.service
systemctl start mariadb.service
三、开始部署私人网盘服务器
1.下载并解压nextcloud主程序文件
文章首页已经提供了下载链接,如果您还是没有下载请跳转
链接:https://pan.baidu.com/s/1CbS5scJvpV0sv2PEsCpvDQ?pwd=d5zq
提取码:d5zq
本文建议您把下载好的2个文件(一个本体,一个MD5)默认放在root家目录下
一.MD5检验文件完整性
md5sum -c nextcloud-15.0.5.zip.md5 < nextcloud-15.0.5.zip
二.解压并且移动到web服务目录下
unzip nextcloud-15.0.5.zip
cd nextcloud
cp -R * /var/www/html/
三.创建数据文件目录
mkdir /var/www/html/data
2.对目录设置权限(确保web可以正常访问)
chown -R apache:apache /var/www/html
一.重启web服务
systemctl restart httpd.service
二.设置防火墙
firewall-cmd --zone=public --add-service=http --permanent
firewall-cmd --reload
四、设置selinux安全上下文
semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/data(/.*)?'
semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/config(/.*)?'
semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/apps(/.*)?'
semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/.htaccess'
semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/.user.ini'
semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/3rdparty/aws/aws-sdk-php/src/data/logs(/.*)?'
restorecon -R '/var/www/html/'
setsebool -P httpd_can_network_connect on
到这一步,服务器就搭建成功了,可以用浏览器访问您服务器的IP地址开始配置了!
五、拓展
给服务器添加信任IP,防止换一个IP地址访问服务器后提示不受信任的链接
vi /var/www/html/config/config.php
按照格式把您的第二个,或者第三个,或者您的域名添加进去即可
添加完成后重启服务器
systemctl start httpd.service
如果重启失败了,说明您的上一步添加信任IP操作步骤有误