不想折腾的话,就建议使用
1、服务器IP反向代理
下面是一个,用你服务器的
2、域名反向代理HTTP
下面是一个,用你的域名来反向代理一个
3、域名反向代理HTTPS
如果你有
下面的
4、HTTP重定向为HTTPS
当你是手动指定
下面的示例代码中,是把
Caddy是一个使用Go语言写的 HTTP Server,开发时间并不长,在性能上或许比不上 Nginx,但是在上手难度/配置难度上,非常简单。
并且 Caddy支持 自动签订Let’s Encrypt SSL证书,什么都不需要你管,只需要提供一个邮箱,剩下的他会自己申请、配置和续约 SSL证书!
wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh
安装Caddy成功后,我们就继续下面的步骤。
停止:service caddy stop
重启:service caddy restart
查看状态:service caddy status
查看Caddy启动日志: tail -f /tmp/caddy.log
Caddy配置文件位置:/usr/local/caddy/Caddyfile
配置示例:
配置示例:
你可以理解为,nohub成功启动了 Caddy,但是 Caddy因为配置文件错误等原因,启动后又退出了。
所以这种情况下,你应该去查看启动日志:
停止 Apache2
service caddy start
-----------------
Caddy 一键反代谷歌安装脚本 ,https://github.com/233abc/caddy
Github 项目:https://github.com/hacdias/caddy-filemanager
搜索 文件/文件夹和执行 Linux命令不知道是我姿势错误,还是其他原因,一直没什么反应和效果。。。
前面的几篇教程,我都用到了Caddy,大家应该都能看出来Caddy的易用性,所以本篇教程也很简单,唯一的难点就是 对一些扩展参数的理解,所以我会提供一些示例。
示例域名皆为
不需要用户名和密码即可访问,允许 新建/删除/移动/重命名 文件或文件夹等操作,同时允许使用Linux命令
不需要用户名和密码即可访问,允许 新建/删除/移动/重命名 文件或文件夹等操作,同时允许使用Linux命令
不需要用户名和密码即可访问,允许 新建/删除/移动/重命名 文件或文件夹等操作,同时允许使用Linux命令
当你是手动指定 SSL证书和密匙 来配置的话,Caddy只会监听 443端口(https),并不会自动设置 80端口(http)的重定向,如果要做重定向的话,可以这样做:
需要用户名和密码登录,允许新建/删除/移动/重命名 文件或文件夹等操作,同时允许使用Linux命令
因为只有一个用户,所以不需要设置全局配置。
注意:用户名和密码不支持特殊符号,必须使用 数字和字母 [a-z][A-z][0-6]
需要用户名和密码登录,多用户,分别是 admin 和 user 用户。
admin 用户(相当于管理员)允许 允许 新建/删除/移动/重命名 文件或文件夹等操作,同时允许使用Linux命令
user 用户(相当于游客)只允许浏览 文件管理器的内容和信息,其他任何操作都无法执行。
修改完配置后,请重启 Caddy 以生效。
停止:service caddy stop
重启:service caddy restart
查看状态:service caddy status
查看Caddy启动日志: tail -f /tmp/caddy.log
Caddy配置文件位置:/usr/local/caddy/Caddyfile
你可以理解为,nohub成功启动了 Caddy,但是 Caddy因为配置文件错误等原因,启动后又退出了。
所以这种情况下,你应该去查看启动日志:
最后一句代码都是
如果你要设置多个网站,那么把最后一句代码改成
停止 Apache2
Caddy
来反代,毕竟Caddy
配置简单也支持Let’s Encrypt
证书,很方便。安装Caddy
运行以下命令:wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/caddy_install.sh
&& chmod 755 caddy_install.sh && bash caddy_install.sh
配置文件
以下所有示例域名为toyoo.ml
,请注意替换为自己的域名 !1、服务器IP反向代理
下面是一个,用你服务器的
IP
来反向代理一个http
协议的网站http://www.baidu.com
。# 以下全部内容是一个整体,是一个命令,全部复制粘贴到SSH软件中并一起执行!
echo ":80 {
gzip
proxy / http://www.baidu.com
}" > /usr/local/caddy/Caddyfile
服务器IP
也可以反向代理HTTPS
协议的网站,但是需要自签SSL
证书,现在的浏览器一般都不会认自签的SSL
证书,所以不建议这么做。2、域名反向代理HTTP
下面是一个,用你的域名来反向代理一个
http
协议的网站http://www.baidu.com
。# 以下全部内容是一个整体,是一个命令,全部复制粘贴到SSH软件中并一起执行!
echo "http://toyoo.ml {
gzip
proxy / http://www.baidu.com
}" > /usr/local/caddy/Caddyfile
如果你需要反向代理HTTPS
协议的网站,比如https://www.baidu.com
,那么继续看下面步骤。3、域名反向代理HTTPS
如果你有
SSL
证书和密匙的话,把SSL
证书(xxx.crt
)和密匙(xxx.key
)文件放到/root
文件夹下(也可以是其他文件夹,自己改下面代码),然后这样做:# 以下全部内容是一个整体,是一个命令,全部复制粘贴到SSH软件中并一起执行!
echo "https://toyoo.ml {
gzip
tls /root/xxx.crt /root/xxx.key
proxy / https://www.baidu.com
}" > /usr/local/caddy/Caddyfile
如果你没有SSL
证书和密匙,那么你可以这样做:下面的
xxxx@xxx.xx
改成你的邮箱,同时需要注意的是,申请SSL
证书前,请务必提前解析好域名记录(解析后最好等一会,以全球生效),否则Caddy
会申请并配置失败!# 以下全部内容是一个整体,是一个命令,全部复制粘贴到SSH软件中并一起执行!
echo "https://toyoo.ml {
gzip
tls xxxx@xxx.xx
proxy / https://www.baidu.com
}" > /usr/local/caddy/Caddyfile
如果一切正常,那么Caddy
会自动帮你申请SSL
证书并配置好,而且会定时续约SSL
证书和强制http
重定向至https
!4、HTTP重定向为HTTPS
当你是手动指定
SSL
证书和密匙 来配置的话,Caddy
只会监听443
端口(https
),并不会自动设置80
端口(http
)的重定向(如果是Caddy
自动申请的SSL
证书,那么就自动做好了),如果要做重定向的话,可以这样做:下面的示例代码中,是把
http://toyoo.ml
、http://233.toyoo.ml
、https://666.toyoo.ml
三个域名都重定向到了 https://toyoo.ml
。# 以下全部内容是一个整体,是一个命令,全部复制粘贴到SSH软件中并一起执行!
echo "http://toyoo.ml ,http://233.toyoo.ml ,https://666.toyoo.ml {
redir https://toyoo.ml{url}
}
https://toyoo.ml {
gzip
tls /root/xxx.crt /root/xxx.key
proxy / https://www.baidu.com
}" > /usr/local/caddy/Caddyfile
修改完Caddy
的配置文件后,重启Caddy
即可。/etc/init.d/caddy restart
--------------------------------------------------------- Caddy是一个使用Go语言写的 HTTP Server,开发时间并不长,在性能上或许比不上 Nginx,但是在上手难度/配置难度上,非常简单。
并且 Caddy支持 自动签订Let’s Encrypt SSL证书,什么都不需要你管,只需要提供一个邮箱,剩下的他会自己申请、配置和续约 SSL证书!
安装Caddy
Caddy 是 Go语言编译好的二进制程序,所以只有一个 Caddy 文件(还需要生成一个配置文件),但是为了管理方便,所以我做了个一键脚本:wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh
安装Caddy成功后,我们就继续下面的步骤。
配置文件
Caddy的特点之一就是,配置文件非常的简单,继续下面看就知道了。服务器IP 反向代理
下面是一个,用你服务器的IP 来反向代理一个 http 协议的网站 http://www.baidu.com
一次性复制以下全部代码,并粘贴到SSH中执行:
服务器IP 也可以反向代理 HTTPS 协议的网站,但是需要自签SSL证书,现在的浏览器一般都不会认 自签的SSL证书,所以不建议这么做。
- echo ":80 {
- gzip
- proxy / http://www.baidu.com
- }" > /usr/local/caddy/Caddyfile
域名 反向代理 HTTP
下面是一个,用你的域名 来反向代理一个 http 协议的网站 http://www.baidu.com
以下所有示例域名为
一次性复制以下全部代码,并粘贴到SSH中执行:
toyoo.ml
,请注意替换为 自己的域名 !一次性复制以下全部代码,并粘贴到SSH中执行:
如果你需要反向代理 HTTPS 协议的网站,比如
- echo "http://toyoo.ml {
- gzip
- proxy / http://www.baidu.com
- }" > /usr/local/caddy/Caddyfile
https://www.baidu.com
,那么继续看下面步骤。域名 反向代理 HTTPS
如果你有 SSL证书和密匙的话,把 SSL证书(xxx.crt)和密匙(xxx.key)文件放到 /root
文件夹下(也可以是其他文件夹,自己改下面代码),然后这样做:
一次性复制以下全部代码,并粘贴到SSH中执行:
下面的
一次性复制以下全部代码,并粘贴到SSH中执行:
如果你没有 SSL证书和密匙,那么你可以这样做:
- echo "https://toyoo.ml {
- gzip
- tls /root/xxx.crt /root/xxx.key
- proxy / https://www.baidu.com
- }" > /usr/local/caddy/Caddyfile
下面的
xxxx@xxx.xx
改成你的邮箱,同时需要注意的是,申请 SSL证书前,请务必提前解析好域名记录(解析后最好等一会,以全球生效),否则 Caddy会申请并配置失败!一次性复制以下全部代码,并粘贴到SSH中执行:
如果一切正常,那么Caddy会自动帮你申请 SSL证书并配置好,而且会定时续约SSL证书 和 强制 http重定向至https !
- echo "https://toyoo.ml {
- gzip
- tls xxxx@xxx.xx
- proxy / https://www.baidu.com
- }" > /usr/local/caddy/Caddyfile
上面这两段示例中,只要把 https://www.baidu.com 改成 https://www.google.com ,即可实现反向代理 Google了!
需要注意的是,因为墙会检测关键词,所以请务必使用 HTTPS协议,不要使用 HTTP协议,否则很快就会被墙!
HTTP重定向为HTTPS
当你是手动指定 SSL证书和密匙 来配置的话,Caddy只会监听 443端口(https),并不会自动设置 80端口(http)的重定向(如果是Caddy自动申请的SSL证书,那么就自动做好了),如果要做重定向的话,可以这样做:
下面的示例代码中,是把
一次性复制以下全部代码,并粘贴到SSH中执行:
http://toyoo.ml、http://233.toyoo.ml、https://666.toyoo.ml
三个域名都重定向到了 https://toyoo.ml
。一次性复制以下全部代码,并粘贴到SSH中执行:
修改完 Caddy的配置文件后,重启 Caddy即可。
- echo "http://toyoo.ml ,http://233.toyoo.ml ,https://666.toyoo.ml {
- redir https://toyoo.ml{url}
- }
- https://toyoo.ml {
- gzip
- tls /root/xxx.crt /root/xxx.key
- proxy / https://www.baidu.com
- }" > /usr/local/caddy/Caddyfile
- service caddy restart
使用说明
启动:service caddy start停止:service caddy stop
重启:service caddy restart
查看状态:service caddy status
查看Caddy启动日志: tail -f /tmp/caddy.log
Caddy配置文件位置:/usr/local/caddy/Caddyfile
卸载 Caddy:
执行以下代码后,会问你是否确定要卸载 Caddy,输入 y
即可。注意:卸载 Caddy 会把Caddy的所有虚拟主机文件夹和配置文件删除,并且不可恢复!
wget -N --no-check-certificate https://raw.githubusercontent.com/pipesocks/install/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh uninstall
其他说明
单网站/多网站
当然,上面的几个示例,实际上都算是单网站。
最后一句代码都是
如果你要设置多个网站,那么把最后一句代码改成
}" > /usr/local/caddy/Caddyfile
,也就是清空了 Caddy配置文件,然后再写入了配置信息。如果你要设置多个网站,那么把最后一句代码改成
}" >> /usr/local/caddy/Caddyfile
即可,注意是把 >
改成 >>
,这样就不会清空原来的配置信息了,而是会把要添加的配置信息加到配置文件最后!网页加密
什么?担心自己做的镜像不小心爆露被滥用?没事,设置一下用户名和密码即可,只需要在上面的示例中加入这行代码:
- basicauth / user passwd
user
指的是 用户名,passwd
指的是 用户名密码,设置这个后,访问网页就需要输入用户名和密码来验证了!注意:用户名和密码不支持特殊符号,必须使用 数字和字母 [a-z][A-z][0-6]修改配置文件后,记得重启 Caddy !
配置示例:
- echo "https://toyoo.ml {
- gzip
- basicauth / user passwd
- tls /root/xxx.crt /root/xxx.key
- proxy / https://www.baidu.com
- }" > /usr/local/caddy/Caddyfile
记录日志
如果你想要记录网站访问日志,那么只需要在上面的示例中加入这行代码:修改配置文件后,记得重启 Caddy !
- log /tmp/caddy_1.log
配置示例:
日志文件的位置和名字可以自己改,放到
- echo "https://toyoo.ml {
- gzip
- log /tmp/caddy_1.log
- tls /root/xxx.crt /root/xxx.key
- proxy / https://www.baidu.com
- }" > /usr/local/caddy/Caddyfile
/tmp
文件夹的话,每次重启都会自动清空日志的。启动显示成功,但是实际未运行
因为 服务脚本判断的问题,只判断了nohub是否运行 Caddy成功,但没有判断 Caddy 是否保持正常运行。你可以理解为,nohub成功启动了 Caddy,但是 Caddy因为配置文件错误等原因,启动后又退出了。
所以这种情况下,你应该去查看启动日志:
- tail -f /tmp/caddy.log
Caddy启动失败,打开 http://ip 显示的是 It works !
一些系统会自带 apache2 ,而 apache2 会占用80端口,导致Caddy无法绑定端口,所以只要关掉就好了。不过 apache2 会默认开机自启动,如果不需要可以关闭自启动或者卸载 apache2 。
- netstat -lntp
- # 我们可以通过这个命令查看是不是被其他软件占用了 80 端口。
停止 Apache2
取消开机自启动
- service apache2 stop
- # 尝试使用上面这个关闭,如果没效果或者提示什么错误无法关闭,那就用下面这个强行关闭进程。
- kill -9 $(ps -ef|grep "apache2"|grep -v "grep"|awk '{print $2}')
卸载 Apache2
- # 以下代码仅限 Debian/Ubuntu 系统 #
- update-rc.d -f apache2 remove
关闭 Apache2后,就可以尝试启动 Caddy ,并试试能不能打开网页。
- # 以下代码仅限 Debian/Ubuntu 系统 #
- apt-get remove --purge apache2
service caddy start
-----------------
Caddy 一键反代谷歌安装脚本 ,https://github.com/233abc/caddy
-----------
利用 Caddy FileManager扩展 非常简单的部署 私人网盘/在线文件管理器
Caddy FileManager扩展
FileManager 是基于Caddy 的扩展。它提供文件管理界面,可用于 上传/下载/删除/预览和重命名 等该目录中的文件。- 支持 执行 Linux命令。
- 支持 上传文件(不支持文件夹)
- 支持 管理 多用户权限。
- 支持 搜索 文件/文件夹。
- 支持 批量 压缩文件下载。
- 支持 在线浏览 图片/文本/视频等文件。
- 支持 新建/重命名/移动/编辑/删除 文件和文件夹等操作。
- 部署简单。
- 等等 …
Github 项目:https://github.com/hacdias/caddy-filemanager
搜索 文件/文件夹和执行 Linux命令不知道是我姿势错误,还是其他原因,一直没什么反应和效果。。。
前面的几篇教程,我都用到了Caddy,大家应该都能看出来Caddy的易用性,所以本篇教程也很简单,唯一的难点就是 对一些扩展参数的理解,所以我会提供一些示例。
安装 Caddy
注意:Caddy脚本今天更新了 v1.0.1 版本,新增安装时可选 扩展参数的功能,
所以使用旧版本Caddy的,请卸载重装!
- wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh install http.filemanager
- mkdir /usr/local/caddy/www && mkdir /usr/local/caddy/www/file
配置 Caddy
首先,我们先讲一下,FileManager扩展各个参数。- filemanager [baseurl] {
- show directory
- styles filepath
- allow_new [true|false]
- allow_edit [true|false]
- allow_commands [true|false]
- allow_command command
- block_command command
- allow [url|dotfiles]
- allow_r regex
- block [url|dotfiles]
- block_r regex
- }
- filemanager 的参数 baseurl 是要流量的文件管理器的URL。默认是
/
(比如/doubi
那么访问入口就是http://ip/doubi
)。 - show 的参数 directory 是要浏览的文件管理器的文件夹路径,可以使相对或绝对路径。默认是
./
(服务器上面文件的绝对或相对路径)。 - styles 的参数 filepath 是式样表文件的相对或绝对路径,该文件不需要从网络访问(一般可以无视)。
- allow_new 是设置 创建 新文件或新文件夹 的权限开关,默认是允许
true
(不允许则是 false)。 - allow_edit 是设置 编辑/重命名/删除 文件或文件夹 的权限开关,默认是允许
true
(不允许则是 false)。 - alow_commands 是设置 执行Linux命令 的权限开关,默认是允许
true
(不允许则是 false)。 - allow_command 是允许执行的 Linux命令。
- block_command 是禁止执行的 Linux命令。
- allow_command 和 block_command 的参数 command 是Linux命令,默认运行
git/svn/hg
(比如这些命令:cp / mv / rm 等)。 - allow 是允许访问特定文件或文件夹,可以使用
dotfiles
来允许访问文件或文件夹。 - block 是阻止访问特定文件或文件夹,可以使用
dotfiles
来阻止访问文件或文件夹,被阻止的文件或者文件夹将不会显示在 文件管理界面。 - allow_r 和 block_r 是上面命令的扩展,可以使用 正则表达式,正则表达式用于匹配 URL,而不是内部路径文件。
配置示例
以下示例中,虚拟主机文件夹皆为 /usr/local/caddy/www/file
示例域名皆为
toyoo.ml
IP HTTP
本示例是,绑定虚拟主机为IP(即通过IP访问),HTTP协议(80端口)。不需要用户名和密码即可访问,允许 新建/删除/移动/重命名 文件或文件夹等操作,同时允许使用Linux命令
mv
。
- echo ":80 {
- root /usr/local/caddy/www/file
- timeouts none
- gzip
- filemanager / {
- show /usr/local/caddy/www/file
- allow_new true
- allow_edit true
- allow_commands true
- allow_command mv
- }
- }" > /usr/local/caddy/Caddyfile
域名 HTTP
本示例是,绑定虚拟主机为域名(即通过域名访问),HTTP协议(80端口)。不需要用户名和密码即可访问,允许 新建/删除/移动/重命名 文件或文件夹等操作,同时允许使用Linux命令
mv
。
- echo "http://toyoo.ml {
- root /usr/local/caddy/www/file
- timeouts none
- gzip
- filemanager / {
- show /usr/local/caddy/www/file
- allow_new true
- allow_edit true
- allow_commands true
- allow_command mv
- }
- }" > /usr/local/caddy/Caddyfile
域名 HTTPS
本示例是,绑定虚拟主机为域名(即通过域名访问),HTTPS协议(443端口)。不需要用户名和密码即可访问,允许 新建/删除/移动/重命名 文件或文件夹等操作,同时允许使用Linux命令
mv
。
如果你有 SSL证书和密匙的话,把 SSL证书(xxx.crt)和密匙(xxx.key)文件放到
下面的
/root
文件夹下(也可以是其他文件夹,自己改下面代码),然后这样做:如果你没有 SSL证书和密匙,那么你可以这样做:
- echo "https://toyoo.ml {
- root /usr/local/caddy/www/file
- timeouts none
- tls /root/xxx.crt /root/xxx.key
- gzip
- filemanager / {
- show /usr/local/caddy/www/file
- allow_new true
- allow_edit true
- allow_commands true
- allow_command mv
- }
- }" > /usr/local/caddy/Caddyfile
下面的
xxxx@xxx.xx
改成你的邮箱,同时需要注意的是,申请 SSL证书前,请务必提前解析好域名记录(解析后最好等一会,以全球生效),否则 Caddy会申请并配置失败!
- echo "https://toyoo.ml {
- root /usr/local/caddy/www/file
- timeouts none
- tls xxxx@xxx.xx
- gzip
- filemanager / {
- show /usr/local/caddy/www/file
- allow_new true
- allow_edit true
- allow_commands true
- allow_command mv
- }
- }" > /usr/local/caddy/Caddyfile
域名 HTTP重定向 HTTPS
本示例是,域名HTTP重定向为HTTPS。当你是手动指定 SSL证书和密匙 来配置的话,Caddy只会监听 443端口(https),并不会自动设置 80端口(http)的重定向,如果要做重定向的话,可以这样做:
下面的示例代码中,是把 http://toyoo.ml 重定向到了 https://toyoo.ml 。
- echo "http://toyoo.ml {
- timeouts none
- redir https://toyoo.ml{url}
- }
- https://toyoo.ml {
- gzip
- tls /root/xxx.crt /root/xxx.key
- ...
- }" > /usr/local/caddy/Caddyfile
单用户/多用户 说明
这里会简单解释一下 单用户/多用户 配置后,权限的分配问题。
- filemanager {
- # 在前面是设定 全局配置的,所有用户都会继承全局配置。
- allow_commands false # 这个全局配置代表所有用户都无法执行 Linux命令。
- allow_new false # 这个全局配置代表所有用户都无法新建 文件或文件夹。
- user1:
- # 用户名下面就是该用户 user1 的具体配置,只针对该用户。
- # 该用户的配置可以覆盖 同名的全局配置。
- allow_commands trus # 这个用户配置,会覆盖全局配置,user1 用户允许执行 Linux命令。
- # 该用户 user1 无法新建 文件或文件夹。
- user2:
- # 用户名下面就是该用户 user2 的具体配置,只针对该用户。
- # 该用户的配置可以覆盖 同名的全局配置。
- allow_new true # 该用户 user2 可以新建 文件或文件夹,覆盖全局配置。
- }
设置用户名和密码(单用户)
本示例是,绑定虚拟主机为域名(即通过域名访问),HTTP协议(80端口)。需要用户名和密码登录,允许新建/删除/移动/重命名 文件或文件夹等操作,同时允许使用Linux命令
cp
。因为只有一个用户,所以不需要设置全局配置。
注意:用户名和密码不支持特殊符号,必须使用 数字和字母 [a-z][A-z][0-6]
- echo "http://toyoo.ml {
- root /usr/local/caddy/www/file
- timeouts none
- gzip
- basicauth / user your-username
- filemanager / {
- show /usr/local/caddy/www/file
- user:
- allow_new true
- allow_edit true
- allow_commands true
- allow_command cp
- }
- }" > /usr/local/caddy/Caddyfile
多用户配置
本示例是,绑定虚拟主机为域名(即通过域名访问),HTTP协议(80端口)。需要用户名和密码登录,多用户,分别是 admin 和 user 用户。
admin 用户(相当于管理员)允许 允许 新建/删除/移动/重命名 文件或文件夹等操作,同时允许使用Linux命令
cp
。user 用户(相当于游客)只允许浏览 文件管理器的内容和信息,其他任何操作都无法执行。
- echo "http://toyoo.ml {
- root /usr/local/caddy/www/file
- timeouts none
- gzip
- basicauth / admin doubi233
- basicauth / user your-username
- filemanager / {
- show /usr/local/caddy/www/file
- allow_commands false
- admin:
- allow_new true
- allow_edit true
- allow_commands true
- allow_command cp
- user:
- allow_new false
- allow_edit false
- }
- }" > /usr/local/caddy/Caddyfile
- service caddy restart
FileManager 使用说明
界面介绍
进入文件管理界面后,界面大概如下(可能随版本更新会有差别)。- 顶部中间 是 搜索栏 和 Linux命令执行栏。
- 顶部右边 是退出当前用户的按钮(如果设置了用户账号)。
- 中部左边 是一个可以返回上一级目录的按钮和当前文件夹名字。
- 中部右边 是一系列的操作按钮,在不同情况下会不同,当前是选择文件的情况下。
- 新窗口 打开文件或下载文件
- 移动 文件/文件夹
- 重命名 文件/文件夹
- 切换 显示状态(方块和列表)
- 上传 文件(不支持文件夹)
- 压缩 下载(这个是会把你选择的文件/文件夹 压缩到一个文件然后下载,CTRL + 鼠标左键 可以选择多个文件或文件夹)
- 查看 当前选中文件的信息(目前还未开放)
使用技巧
一些按键有对应的作用:- F1 – 查看帮助
- F2 – 重命名 文件/文件夹
- DEL – 删除所选 文件/文件夹
- ESC – 清除当前选择 或 关闭提示
- CTRL + S – 保存下载 文件/文件夹(zip压缩)
- CTRL + 鼠标左键 单击 – 选择多个文件/文件夹
- 鼠标左键 双击 – 打开文件/文件夹
- 鼠标左键 单击 – 选择文件/文件夹
- Alt + 鼠标左键 单击 – 选择一组文件
Caddy 使用说明
启动:service caddy start停止:service caddy stop
重启:service caddy restart
查看状态:service caddy status
查看Caddy启动日志: tail -f /tmp/caddy.log
Caddy配置文件位置:/usr/local/caddy/Caddyfile
其他说明
启动显示成功,但是实际未运行
因为 服务脚本判断的问题,只判断了nohub是否运行 Caddy成功,但没有判断 Caddy 是否保持正常运行。你可以理解为,nohub成功启动了 Caddy,但是 Caddy因为配置文件错误等原因,启动后又退出了。
所以这种情况下,你应该去查看启动日志:
- tail -f /tmp/caddy.log
单网站/多网站
当然,上面的几个示例,实际上都算是单网站。最后一句代码都是
}" > /usr/local/caddy/Caddyfile
,也就是清空了 Caddy配置文件,然后再写入了配置信息。如果你要设置多个网站,那么把最后一句代码改成
}" >> /usr/local/caddy/Caddyfile
即可,注意是把 > 改成 >>
,这样就不会清空原来的配置信息了,而是会把要添加的配置信息加到配置文件最后!Caddy下载文件频繁中断
可能是因为 Caddy的超时时间机制导致的,可以在配置文件中加入这句代码 timeouts none
,例如这样:
- http://toyoo.ml (
- timeouts none
- root /home/www
- ...
- )
Caddy启动失败,打开 http://ip 显示的是 It works !
一些系统会自带 apache2 ,而 apache2 会占用80端口,导致Caddy无法绑定端口,所以只要关掉就好了。不过 apache2 会默认开机自启动,如果不需要可以关闭自启动或者卸载 apache2 。
- netstat -lntp
- # 我们可以通过这个命令查看是不是被其他软件占用了 80 端口。
停止 Apache2
取消开机自启动
- service apache2 stop
- # 尝试使用上面这个关闭,如果没效果或者提示什么错误无法关闭,那就用下面这个强行关闭进程。
- kill -9 $(ps -ef|grep "apache2"|grep -v "grep"|awk '{print $2}')
卸载 Apache2
- # 以下代码仅限 Debian/Ubuntu 系统 #
- update-rc.d -f apache2 remove
关闭 Apache2后,就可以尝试启动 Caddy ,并试试能不能打开网页。
- # 以下代码仅限 Debian/Ubuntu 系统 #
- apt-get remove --purge apache2
- service caddy start
如果你是 Aria2 教程里过来的,那么请看这个示例和说明
使用这个扩展的时候,请先确定你的caddy安装了这个扩展(2017/03/23 17:50 以前通过我网站其他教程安装的皆没有),否则请卸载重装!
卸载 Caddy:
需要用户名和密码登录,允许 新建/删除/移动/重命名 文件或文件夹等操作,同时允许使用Linux命令
因为只有一个用户,所以不需要设置全局配置,你访问下载的BT文件就可以通过
使用这个扩展,那么就不需要 caddy 自带的列表功能了,所以可以删除参数
- bash caddy_install.sh uninstall
browse
,然后如下设置即可。需要用户名和密码登录,允许 新建/删除/移动/重命名 文件或文件夹等操作,同时允许使用Linux命令
cp
。因为只有一个用户,所以不需要设置全局配置,你访问下载的BT文件就可以通过
http://ip或域名/Download/
来访问和操作了,用户名和密码是 user233 / your-username 。注意:用户名和密码不支持特殊符号,必须使用 数字和字母 [a-z][A-z][0-6]
- echo -e "http://toyoo.ml {
- root /usr/local/caddy/www/aria2
- timeouts none
- gzip
- basicauth / user233 your-username
- filemanager /Download {
- show /usr/local/caddy/www/aria2/Download
- user233:
- allow_new true
- allow_edit true
- allow_commands true
- }
- }" > /usr/local/caddy/Caddyfile
启动 Caddy后,无法访问
这个可能是防火墙的问题,开放防火墙端口即可。- iptables -I INPUT -m state --state NEW -m tcp -p tcp --dport 端口 -j ACCEPT
- iptables -I INPUT -m state --state NEW -m udp -p udp --dport 端口 -j ACCEPT
- # 删除防火墙规则,内容一样把 -I 换成 -D 就行了:
- iptables -D INPUT -m state --state NEW -m tcp -p tcp --dport 端口 -j ACCEPT
- iptables -D INPUT -m state --state NEW -m udp -p udp --dport 端口 -j ACCEPT
No comments:
Post a Comment