Skip to content

目录索引美化

oupala/apaxy

手动安装

要求

  • Apaxy 需要 Apache (2.4+) http 服务器
  • 需要开启 目录索引

创建以下目录

c
└─web           网站根目录
   ├─files      存放文件
   └─index.html 首页

index.html 中添加以下代码

展开 代码
html
<!-- index.html -->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>

    <link rel="shortcut icon" href="#">
    <link rel="stylesheet" type="text/css" href="css/index.css">

    <style>
        :root
        {
            --bg-posX: 0px;
            --bg-posY: 0px;  
        }

        *
        {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        html
        {
            width: 100%;
            height: 100vh;
            background-color: rgb(201, 201, 201);

            overflow: hidden;
        }
        html::before
        {
            content: '';
            width: 100%;
            height: 100%;
            position: absolute;
            z-index: -1;
            
            //background: url(http://lmgzs.fun:444/files/img/37311279_p0.jpg)no-repeat center;
            background: url(http://lmgzs.fun:444/files/img/102545981_p0.jpg)no-repeat center;
            background-size: cover;
            background-attachment: fixed;
            filter: brightness(100%);
            /* backdrop-filter: blur(3px); */

            /* 变形 放大 */
            transform: scale(1.1);
            
            background-position: var(--bg-posX) var(--bg-posY);
        }

        body
        {
            width: 100%;
            height: 100%;

            display: flex;
        }

        #shell
        {
            width: 90%;
            height: 90%;

            margin: auto;

            display: flex;

            backdrop-filter: blur(30px);
            box-shadow: 0px 0px 10px 1px rgba(255, 255, 255, 0.5);
            border-style: none;
            border-radius: 30px;
        }

        #shell #btn
        {
            margin: auto;

            /* border: none; */
            color: #fff;
            background-image: linear-gradient(30deg, rgba(0, 0, 0, 0.5), rgb(255,255,255, 0.5));
            border-radius: 30px;
            background-size: 100% auto;
            font-family: inherit;
            font-size: 1.5em;
            padding: 0.6em 1.5em;

            background-position: right center;
            background-size: 200% auto;
            -webkit-animation: pulse 2s infinite;
            animation: pulse512 1.5s infinite;
        }

        @keyframes pulse512
        {
            0% {
                box-shadow: 0 0 0 0 rgb(255,255,255, 0.5);
            }

            70% {
                box-shadow: 0 0 0 10px rgb(218 103 68 / 0%);
            }

            100% {
                box-shadow: 0 0 0 0 rgb(218 103 68 / 0%);
            }
        }
    </style>
</head>

<body>
    <div id="shell">
        <div id="btn">进入文件夹</div>
    </div>
</body>
</html>

<script>
    // 按钮点击事件
    var btn = document.getElementById("btn");
    btn.onclick = function()
    {
        window.location.href = "http://lmgzs.fun:444/files/";
    }

    // 背景图跟随鼠标
    var html = document.getElementsByTagName("html")[0];
    // var htmlBefore = document.defaultView.getComputedStyle(html, "before")
    // var htmlBefore = window.getComputedStyle(html, '::before').getPropertyValue('backgroundPosition');
    var root = document.querySelector(":root")
    // var rootX = getComputedStyle(root).getPropertyValue("--bg-posX")

    var DOMW = document.body.clientWidth
    var DOMH = document.body.clientHeight

    function getMousePos(event) {
        var e = event || window.event;
        var scrollX = document.documentElement.scrollLeft || document.body.scrollLeft;
        var scrollY = document.documentElement.scrollTop || document.body.scrollTop;
        var x = e.pageX || e.clientX + scrollX;
        var y = e.pageY || e.clientY + scrollY;
        return { "x": x, "y": y };
    }

    onmousemove = function()
    {
        var XY = getMousePos()

        // root.style.setProperty("--bg-posX", XY.x / 50 + "px")
        // root.style.setProperty("--bg-posY", XY.y / 50 + "px")

        if ( XY.x < (DOMW / 2))
        {
            // root.style.setProperty("--bg-posX", ((DOMW / 2) - XY.x) / 50 + "px")
            root.style.setProperty("--bg-posX", ((DOMW / 2) - XY.x) / 50 + ((-DOMW / 100)) + "px")
        }
        else
        {
            // root.style.setProperty("--bg-posX", +((DOMW / 2) - XY.x) / 50 + "px")
            root.style.setProperty("--bg-posX", ((DOMW / 2) - XY.x) / 50 + ((-DOMW / 100)) + "px")
        }

        if ( XY.y < (DOMH / 2))
        {
            // root.style.setProperty("--bg-posY", ((DOMH / 2) - XY.y) / 50 + "px")
            root.style.setProperty("--bg-posY", ((DOMH / 2) - XY.y) / 50 + ((-DOMH / 100)) + "px")
        }
        else
        {
            // root.style.setProperty("--bg-posY", +((DOMH / 2) - XY.y) / 50 + "px")
            root.style.setProperty("--bg-posY", +((DOMH / 2) - XY.y) / 50 + ((-DOMH / 100)) + "px")
        }
    }
</script>

下载并解压缩 Apaxy

展开 解压后的目录结构
c
└─apaxy-main
   ├─.github
   ├─apaxy
   ├─share
   ├─.gitignore
   ├─apaxy-configure.sh
   ├─apaxy.config
   ├─CHANGELOG.md
   ├─CODE_OF_CONDUCT.md
   ├─CONTRIBUTING.md
   ├─COPYING.md
   ├─docker-compose.yml
   ├─Dockerfile
   ├─package.json
   └─README.md

apaxy文件夹复制并粘贴到web文件夹

c
└─web           网站根目录
   ├─apaxy
   ├─files      存放文件
   └─index.html 首页

编辑apaxy/htaccess.txt将{FOLDERNAME}改成实际路径 比如:

c
ErrorDocument 400 {FOLDERNAME}/theme/400.html
ErrorDocument 400 /apaxy/theme/400.html

可选 推荐 启用JavaScript灯箱画廊

lightgallery.js

c
HeaderName {FOLDERNAME}/theme/header.html
ReadmeName {FOLDERNAME}/theme/footer.html
HeaderName /apaxy/theme/header-lightgallery.html
ReadmeName /apaxy/theme/footer-lightgallery.html

编辑apaxy/theme/*.html将{FOLDERNAME}改成实际路径

展开 查看404.html
html
<!-- apaxy/theme/404.html -->
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8"/>
		<meta name="viewport" content="width=device-width, initial-scale=1">
		<title>Error 404</title>
		<!-- Stylesheets -->
		<link rel="stylesheet" href="{FOLDERNAME}/theme/style.css" />
        <link rel="stylesheet" href="/apaxy/theme/style.css" />
	</head>
	<body class="fadeDown">
		<div class="center">
			<h1>Error.</h1>
			<div class="errorCode">404
			</div>
			<p>I can't find what you are looking for...</p>
		</div>
	</body>
</html>

最后 将apaxy/htaccess.txt文件复制到网站根目录web文件夹 并改名为.htaccess

c
└─web           网站根目录
   ├─apaxy
   ├─files      存放文件
   ├─.htaccess
   └─index.html 首页

Apaxy 主题

如果你想更改默认的Apaxy主题,请在apaxy/theme/文件夹中查找,你会发现以下文件:

c
└─web                  网站根目录
   ├─apaxy
   │  └─theme          主题
   │     ├─header.html 
   │     ├─footer.html 
   │     └─style.css   

   ├─files             存放文件
   ├─.htaccess
   └─index.html        首页

修改 style.css 加上背景图和高斯模糊

css
/* ↓落梦工作室↓ */

/* ↑落梦工作室↑ */

Released under the MIT License.