phpMyFAQ - Open Source FAQ web application for PHP and MySQL, PostgreSQL and other databases
phpMyFAQ is a multilingual, completely database-driven FAQ-system. It supports various databases to store all data, PHP 7.3+ is needed in order to access this data. phpMyFAQ also offers a multi-language Content Management System with a WYSIWYG editor and a media manager, real time search support with Elasticsearch, flexible multi-user support with user and group based permissions on categories and records, a wiki-like revision feature, a news system, user-tracking, 40+ supported languages, enhanced automatic content negotiation, HTML5/CSS3 based responsive templates, PDF-support, a backup and restore system, a dynamic sitemap, related FAQs, tagging, enhanced SEO features, built-in spam protection systems, OpenLDAP and Microsoft Active Directory support, and an easy-to-use installation and update script.
phpMyFAQ is only supported on PHP 7.3 and up, you need a database as well. Supported databases are MySQL, MariaDB, Percona Server, PostgreSQL, Microsoft SQL Server and SQLite3. If you want to use Elasticsearch as main search engine, you need Elasticsearch 5.x or later. Check our detailed requirements on phpmyfaq.de for more information.
The best way to install phpMyFAQ is to download it on phpmyfaq.de, unzip the package and open http://www.example.org/phpmyfaq/setup/index.php in your preferred browser.
The Dockerfile provided in this repo only build an environment to run any release it's for development purpose. It does not contain any code as the phpmyfaq folder is meant to be mounted as the
/var/www/htmlfolder in the container.
For development purposes you can start a full stack to run your current PhpMyFAQ source code from your local repo.
$ docker-compose up
The command above starts 7 containers for multi database development as following.
Specific images started once to prepare the project:
Running using named volumes:
Running apache web server with PHP 8.0 support:
phpmyfaqfolder in place of
Then services will be available at following addresses:
To run the test using Docker you have to install the Composer development dependencies
$ curl -s https://getcomposer.org/installer | php $ php composer.phar install
The vm.maxmapcount kernel setting needs to be set to at least 262144 for production use. Depending on your platform:
The vm.max*map_count setting should be set permanently in */etc/sysctl.conf_:
$ grep vm.max_map_count /etc/sysctl.conf vm.max_map_count=262144
To apply the setting on a live system type:
sysctl -w vm.max_map_count=262144
The vm.maxmapcount setting must be set within the xhyve virtual machine:
$ screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty
Log in with root and no password. Then configure the sysctl setting as you would for Linux:
$ sysctl -w vm.max_map_count=262144
The vm.maxmapcount setting must be set via docker-machine:
$ docker-machine ssh $ sudo sysctl -w vm.max_map_count=262144
To run phpMyFAQ locally you need at least a running web server with PHP support and a database.
$ git clone git://github.com/thorsten/phpMyFAQ.git $ cd phpMyFAQ $ curl -s https://getcomposer.org/installer | php $ php composer.phar install $ curl -o- -L https://yarnpkg.com/install.sh | bash $ yarn install $ yarn build
Then just open http://www.example.org/phpmyfaq/setup/index.php in your browser.
To run our unit tests via PHPUnit v9.x, just execute this command on your CLI
$ curl -s https://getcomposer.org/installer | php $ php composer.phar install $ ./vendor/bin/phpunit
Please note that phpMyFAQ needs to be installed via Composer.
For transparency and insight into our release cycle, and for striving to maintain backward compatibility, phpMyFAQ will be maintained under the Semantic Versioning guidelines as much as possible.
Releases will be numbered with the following format:
And constructed with the following guidelines:
For more information on SemVer, please visit http://semver.org/.
Found a bug, or do you have a feature request? Please open a new issue. Before opening any issue, please search for existing issues.
Please check out our page about contributing on phpmyfaq.de.
You can find the full documentation on phpmyfaq.de.
Mozilla Public License 2.0, see LICENSE for more information.
Copyright © 2001 - 2021 Thorsten Rinne and the phpMyFAQ Team