HTAdmin is a simple .htaccess and .htpasswd editor to secure web content on an apache web server

FloKra 515316cf27 update README.md 4 rokov pred
manifests 30ea159061 Compatibility with older PHP versions. 8 rokov pred
nginx 8765d16617 - read/write modern apache/nginx md5 .htpasswd files (only, replaces old crypt functions) 4 rokov pred
puppet 9b421bc3e7 Initial commit 8 rokov pred
sites 8765d16617 - read/write modern apache/nginx md5 .htpasswd files (only, replaces old crypt functions) 4 rokov pred
.gitignore 62ab48a917 Cleanups, title now correct 8 rokov pred
README.md 515316cf27 update README.md 4 rokov pred
Vagrantfile 30ea159061 Compatibility with older PHP versions. 8 rokov pred
screenshot.png 9b421bc3e7 Initial commit 8 rokov pred

README.md

HTAdmin

HTAdmin is a simple .htaccess and .htpasswd editor implemented in PHP with a nice frontend (based on bootstrap). It's intended to secure a folder of plain html files with multiple users. The admin has to create a user, but every user can change his password by himself using a self service area. It is also possible to send a password reset mail.

Forked from: https://github.com/soster/htadmin changed/added:

  • read/write modern apache/nginx md5 .htpasswd files (only, replaces old crypt functions)
  • update key for email password reset on every password change
  • include ALL resources (nothing loaded from external servers)
  • renamed some functions/buttons to make it more user friendly
  • added nginx example configuration for directory permissions as nginx does not support .htaccess files
  • does not use external binaries as apache htpasswd (my 1st md5 compatible version did)
  • tested with PHP 7.4 running on docker

It comes with a preconfigured Vagrant / Puppet VM, so you don't have to install a LAMP stack locally for testing.

You find the application in sites/html/htadmin.

Screenshot

Just install vagrant and virtual box and type

vagrant up

to start the vm. After startup point your browser to:

http://localhost/htadmin/

Standard access: admin / admin, make sure to change that in your ...config/config.ini. You have to enter a hashed password, there is a tool for its generation included in the webapp:

http://localhost/htadmin/adminpwd.php

the .htaccess and .htpasswd files are configured for this folder:

http://localhost/test/

Uses the following libraries:

https://github.com/PHPMailer/PHPMailer

Enjoy!