Clean URLs and security improvements
- Add .htaccess rewrite rules for clean URLs (/nl/page, /admin/route) - Add PHP dev server router with clean URL support - Update admin template asset paths to absolute for clean URL compat - All pentest fixes verified: CSRF on login, directory listing disabled, secure cookies, backup/sourcemap files removed, version disclosure off
This commit is contained in:
+24
-24
@@ -4,8 +4,8 @@
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>CodePress Admin</title>
|
||||
<link rel="stylesheet" href="assets/css/bootstrap.min.css">
|
||||
<link rel="stylesheet" href="assets/css/bootstrap-icons.css">
|
||||
<link rel="stylesheet" href="/assets/css/bootstrap.min.css">
|
||||
<link rel="stylesheet" href="/assets/css/bootstrap-icons.css">
|
||||
<style>
|
||||
body { background-color: #f5f6fa; min-height: 100vh; }
|
||||
.admin-sidebar { background-color: #0a369d; min-height: 100vh; width: 240px; position: fixed; top: 0; left: 0; z-index: 100; }
|
||||
@@ -25,8 +25,8 @@
|
||||
}
|
||||
</style>
|
||||
<?php if (in_array($route ?? '', ['content-edit', 'content-new', 'plugins-edit'])): ?>
|
||||
<link rel="stylesheet" href="assets/codemirror/codemirror.min.css">
|
||||
<link rel="stylesheet" href="assets/css/editor.css">
|
||||
<link rel="stylesheet" href="/assets/codemirror/codemirror.min.css">
|
||||
<link rel="stylesheet" href="/assets/css/editor.css">
|
||||
<?php endif; ?>
|
||||
</head>
|
||||
<body>
|
||||
@@ -37,43 +37,43 @@
|
||||
</div>
|
||||
<ul class="nav flex-column mt-2">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link <?= ($route ?? '') === 'dashboard' || ($route ?? '') === '' ? 'active' : '' ?>" href="admin.php?route=dashboard">
|
||||
<a class="nav-link <?= ($route ?? '') === 'dashboard' || ($route ?? '') === '' ? 'active' : '' ?>" href="/admin/dashboard">
|
||||
<i class="bi bi-speedometer2"></i> Dashboard
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link <?= ($route ?? '') === 'content' || str_starts_with($route ?? '', 'content') ? 'active' : '' ?>" href="admin.php?route=content">
|
||||
<a class="nav-link <?= ($route ?? '') === 'content' || str_starts_with($route ?? '', 'content') ? 'active' : '' ?>" href="/admin/content">
|
||||
<i class="bi bi-file-earmark-text"></i> Content
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li class="nav-item">
|
||||
<a class="nav-link <?= ($route ?? '') === 'theme' ? 'active' : '' ?>" href="admin.php?route=theme">
|
||||
<a class="nav-link <?= ($route ?? '') === 'theme' ? 'active' : '' ?>" href="/admin/theme">
|
||||
<i class="bi bi-palette"></i> Thema
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link <?= ($route ?? '') === 'config' ? 'active' : '' ?>" href="admin.php?route=config">
|
||||
<a class="nav-link <?= ($route ?? '') === 'config' ? 'active' : '' ?>" href="/admin/config">
|
||||
<i class="bi bi-sliders"></i> Configuratie
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link <?= ($route ?? '') === 'plugins' ? 'active' : '' ?>" href="admin.php?route=plugins">
|
||||
<a class="nav-link <?= ($route ?? '') === 'plugins' ? 'active' : '' ?>" href="/admin/plugins">
|
||||
<i class="bi bi-plug"></i> Plugins
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link <?= ($route ?? '') === 'users' ? 'active' : '' ?>" href="admin.php?route=users">
|
||||
<a class="nav-link <?= ($route ?? '') === 'users' ? 'active' : '' ?>" href="/admin/users">
|
||||
<i class="bi bi-people"></i> Gebruikers
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item mt-3">
|
||||
<a class="nav-link" href="index.php" target="_blank">
|
||||
<a class="nav-link" href="/" target="_blank">
|
||||
<i class="bi bi-box-arrow-up-right"></i> Website bekijken
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link text-warning" href="admin.php?route=logout">
|
||||
<a class="nav-link text-warning" href="/admin/logout">
|
||||
<i class="bi bi-box-arrow-left"></i> Uitloggen
|
||||
</a>
|
||||
</li>
|
||||
@@ -147,19 +147,19 @@
|
||||
?>
|
||||
</main>
|
||||
|
||||
<script src="assets/js/bootstrap.bundle.min.js"></script>
|
||||
<script src="/assets/js/bootstrap.bundle.min.js"></script>
|
||||
<?php if (in_array($route ?? '', ['content-edit', 'content-new', 'plugins-edit'])): ?>
|
||||
<script src="assets/codemirror/codemirror.min.js"></script>
|
||||
<script src="assets/codemirror/mode/markdown.min.js"></script>
|
||||
<script src="assets/codemirror/mode/xml.min.js"></script>
|
||||
<script src="assets/codemirror/mode/htmlmixed.min.js"></script>
|
||||
<script src="assets/codemirror/mode/php.min.js"></script>
|
||||
<script src="assets/codemirror/mode/clike.min.js"></script>
|
||||
<script src="assets/codemirror/mode/css.min.js"></script>
|
||||
<script src="assets/codemirror/mode/javascript.min.js"></script>
|
||||
<script src="assets/codemirror/addon/edit/closebrackets.min.js"></script>
|
||||
<script src="assets/codemirror/addon/selection/active-line.min.js"></script>
|
||||
<script src="assets/js/editor-toolbar.js"></script>
|
||||
<script src="/assets/codemirror/codemirror.min.js"></script>
|
||||
<script src="/assets/codemirror/mode/markdown.min.js"></script>
|
||||
<script src="/assets/codemirror/mode/xml.min.js"></script>
|
||||
<script src="/assets/codemirror/mode/htmlmixed.min.js"></script>
|
||||
<script src="/assets/codemirror/mode/php.min.js"></script>
|
||||
<script src="/assets/codemirror/mode/clike.min.js"></script>
|
||||
<script src="/assets/codemirror/mode/css.min.js"></script>
|
||||
<script src="/assets/codemirror/mode/javascript.min.js"></script>
|
||||
<script src="/assets/codemirror/addon/edit/closebrackets.min.js"></script>
|
||||
<script src="/assets/codemirror/addon/selection/active-line.min.js"></script>
|
||||
<script src="/assets/js/editor-toolbar.js"></script>
|
||||
<?php endif; ?>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user