参考: https://blog.csdn.net/bingwen0210/article/details/6606662

一、安装apache webdav

流程如下:

1、执行 apache_webdav_install.sh

#!/usr/bin/bash
echo -e '\033[32m======= 安装webdav服务 使用超级权限执行!==========\033[0m'
sleep 3


echo "1. 执行安装apache web服务"
sudo yum -y install httpd




echo "2. 创建并配置 webdav.conf"
sudo mkdir /var/www/html/webdav
sudo chown -R apache:apache /var/www/html/webdav
sudo chmod -R 755 /var/www/html/webdav
touch /etc/httpd/conf.d/webdav.conf
cat >> /etc/httpd/conf.d/webdav.conf <<"EOF"
DavLockDB /var/www/html/DavLock
<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html/webdav/
    ErrorLog /var/log/httpd/error.log
    CustomLog /var/log/httpd/access.log combined
        Alias /webdav /var/www/html/webdav
        <Directory /var/www/html/webdav>
            DAV On
            Options +Indexes
            IndexOptions FancyIndexing
            AddDefaultCharset UTF-8
            AuthType Basic
            AuthName "webdav"
            AuthUserFile /etc/httpd/.htpasswd
            Require valid-user
            Order allow,deny
            Allow from all
        </Directory>
</VirtualHost>
EOF

echo "3. 启动测试 webdav"
sudo systemctl start httpd
sudo systemctl enable httpd
sudo systemctl status httpd
sudo httpd -v
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
sudo firewall-cmd --list-all | grep services
echo "done!"

2、创建用户与服务管理
执行如下指令,输入密码两次;设置用户名密码访问权限;重启apache服务:systemctl restart httpd.service

sudo htpasswd -c /etc/httpd/.htpasswd `apache`  # 其中apache为用户名
sudo chown root:apache /etc/httpd/.htpasswd
sudo chmod 640 /etc/httpd/.htpasswd
sudo apachectl restart                         # 重启服务 

访问:http://ipapache服务Ok
访问:http://ip/webdav/ webdavOk

二、apache服务管理
sudo systemctl start httpd      # 启动服务
sudo systemctl status httpd     # 查看服务启动信息

sudo systemctl stop httpd       # 关闭服务
sudo systemctl restart httpd.service   # 重启服务

sudo systemctl reload httpd     # 修改配置后重新加载服务

sudo systemctl disable httpd    # 禁用Apache服务
sudo systemctl enable httpd     # 启用Apache服务

sudo httpd -v                   # 查看版本

查看服务启动信息

[root@localhost conf]# systemctl status httpd.service
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
   Active: active (running) since Fri 2021-03-19 16:11:18 CST; 11s ago
     Docs: man:httpd(8)
           man:apachectl(8)
 Main PID: 2578 (httpd)
   Status: "Total requests: 0; Current requests/sec: 0; Current traffic:   0 B/sec"
   CGroup: /system.slice/httpd.service
           ├─2578 /usr/sbin/httpd -DFOREGROUND
           ├─2579 /usr/sbin/httpd -DFOREGROUND
           ├─2580 /usr/sbin/httpd -DFOREGROUND
           ├─2581 /usr/sbin/httpd -DFOREGROUND
           ├─2582 /usr/sbin/httpd -DFOREGROUND
           └─2583 /usr/sbin/httpd -DFOREGROUND

Mar 19 16:11:18 localhost.localdomain systemd[1]: Starting The Apache HTTP Server...
Mar 19 16:11:18 localhost.localdomain httpd[2578]: AH00558: httpd: Could not reliably determine the server's fully qualified domain n...message
Mar 19 16:11:18 localhost.localdomain systemd[1]: Started The Apache HTTP Server.
Hint: Some lines were ellipsized, use -l to show in full.

三、访问测试问题

若是无法联通,需要打开HTTP和HTTPS端口80和443:或者关闭防火墙

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

#================================================================
sudo systemctl stop firewalld         # 临时关闭防火墙
sudo systemctl disable firewalld      # 防止防火墙开启启动
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐