brianjking/phpMyFAQ/master/phpmyfaq/_.htaccess
##
# phpMyFAQ .htaccess file for Apache 2.x
#
# This Source Code Form is subject to the terms of the Mozilla Public License,
# v. 2.0. If a copy of the MPL was not distributed with this file, You can
# obtain one at http://mozilla.org/MPL/2.0/.
#
# @author Thorsten Rinne <thorsten@phpmyfaq.de>
# @author Patrick Preuster <sica@php-q.net>
# @author Matteo Scaramuccia <matteo@scaramuccia.com>
# @copyright 2004-2013 phpMyFAQ Team
# @license http://www.mozilla.org/MPL/2.0/ Mozilla Public License Version 2.0
# @link http://www.phpmyfaq.de
# @since 2004-11-13
# always follow the symlinks
Options +FollowSymlinks -MultiViews -Indexes
# if you want to use mod_rewrite, set this 'On'
RewriteEngine On
# the path to your phpMyFAQ installation
RewriteBase /phpmyfaq/
# Maintenance Section - Uncomment the lines below according to your need
# Write below your client IP address (e.g.: 127.0.0.1)
# if you need to keep your web access during maintenance
#RewriteCond %{REMOTE_ADDR} !^127.0.0.1$
# Choose your way of closing the access to PMF:
# a. you can simply forbid access (HTTP 403 Error)
#RewriteRule ^(.*)$ underMaintenance.html [F,L]
# b. return the user an explanation
#RewriteRule ^(.*)$ underMaintenance.html [L]
# show all categories
RewriteCond %{REQUEST_URI} /showcat.html$ [NC]
RewriteRule ^(.*)$ index.php?action=show [L,QSA]
# the search page
RewriteCond %{REQUEST_URI} /search.html$ [NC]
RewriteRule ^(.*)$ index.php?action=search [L,QSA]
# opensearch
RewriteCond %{REQUEST_URI} /opensearch.html$ [NC]
RewriteRule ^(.*)$ opensearch.php [L,QSA]
# the add content page
RewriteCond %{REQUEST_URI} /addcontent.html$ [NC]
RewriteRule ^(.*)$ index.php?action=add [L,QSA]
# the ask question page
RewriteCond %{REQUEST_URI} /ask.html$ [NC]
RewriteRule ^(.*)$ index.php?action=ask [L,QSA]
# the open questions page
RewriteCond %{REQUEST_URI} /open.html$ [NC]
RewriteRule ^(.*)$ index.php?action=open [L,QSA]
# the help page
RewriteCond %{REQUEST_URI} /help.html$ [NC]
RewriteRule ^(.*)$ index.php?action=help [L,QSA]
# the contact page
RewriteCond %{REQUEST_URI} /contact.html$ [NC]
RewriteRule ^(.*)$ index.php?action=contact [L,QSA]
# the glossary page
RewriteCond %{REQUEST_URI} /glossary.html$ [NC]
RewriteRule ^(.*)$ index.php?action=glossary [L,QSA]
# a page with a record (backward compatibility)
# * http://[...]/1_1_en.html
RewriteCond %{REQUEST_URI} ([0-9]+)_([0-9]+)_([a-z-]+).html$ [NC]
RewriteRule ^(.*)_(.*)_(.*).html$ index.php?action=artikel&cat=$1&id=$2&artlang=$3 [L,QSA]
# a category page with page count (backward compatibility)
# * http://[...]/category1_1.html
RewriteCond %{REQUEST_URI} category([0-9]+)_([0-9]+).html$ [NC]
RewriteRule ^category(.*)_(.*).html$ index.php?action=show&cat=$1&seite=$2 [L,QSA]
# a category page (backward compatibility)
# * http://[...]/category1.html
RewriteCond %{REQUEST_URI} category([0-9]+).html$ [NC]
RewriteRule ^category(.*).html$ index.php?action=show&cat=$1 [L,QSA]
# start page
RewriteRule ^index.html$ index.php [PT]
# sitemap (backward compatibility)
RewriteCond %{REQUEST_URI} sitemap-([a-zA-Z0-9]*)_([a-z-]+).html$ [NC]
RewriteRule ^sitemap-(.*)_(.*).html$ index.php?action=sitemap&letter=$1&lang=$2 [L,QSA]
# a solution id page
RewriteCond %{REQUEST_URI} solution_id_([0-9]+).html$ [NC]
RewriteRule ^solution_id_(.*).html$ index.php?solution_id=$1 [L,QSA]
# PMF faq record page
# * http://[...]/content/1/1/<LANGUAGE CODE>/<FAQ TOPIC>.htm
# * http://[...]/content/1/1/<LANGUAGE CODE>/<FAQ TOPIC>.html
RewriteRule content/([0-9]+)/([0-9]+)/([a-z-]+)/(.+).htm(l?)$ index.php?action=artikel&cat=$1&id=$2&artlang=$3 [L,QSA]
# PMF category page with page count
# * http://[...]/category/1/<PAGE NUMBER/<CATEGORY NAME>.htm
# * http://[...]/category/1/<PAGE NUMBER/<CATEGORY NAME>.html
RewriteRule category/([0-9]+)/([0-9]+)/(.+).htm(l?)$ index.php?action=show&cat=$1&seite=$2 [L,QSA]
# PMF category page
# * http://[...]/category/1/<CATEGORY NAME>.htm
# * http://[...]/category/1/<CATEGORY NAME>.html
RewriteRule category/([0-9]+)/(.+).htm(l?)$ index.php?action=show&cat=$1 [L,QSA]
# PMF news page
# * http://[...]/news/<ID>/<LANGUAGE CODE>/<HEADER>.htm
# * http://[...]/news/<ID>/<LANGUAGE CODE>/<HEADER>.html
RewriteRule news/([0-9]+)/([a-z-]+)/(.+).htm(l?)$ index.php?action=news&newsid=$1&newslang=$2 [L,QSA]
# PMF sitemap
# * http://[...]/sitemap/<LETTER>/<LANGUAGE CODE>.htm
# * http://[...]/sitemap/<LETTER>/<LANGUAGE CODE>.html
RewriteRule sitemap/([^/]+)/([a-z-]+).htm(l?)$ index.php?action=sitemap&letter=$1&lang=$2 [L,QSA]
# PMF Google sitemap
# * http://[...]/sitemap.xml
# * http://[...]/sitemap.gz
# * http://[...]/sitemap.xml.gz
RewriteRule sitemap.xml$ sitemap.xml.php [L]
RewriteRule sitemap.gz$ sitemap.xml.php?gz=1 [L]
RewriteRule sitemap.xml.gz$ sitemap.xml.php?gz=1 [L]
# PMF tags page with page count
# * http://[...]/tags/<ID>/<PAGE NUMBER>/<HEADER>.htm
RewriteRule tags/([0-9]+)/([0-9]+)/(.+).htm(l?)$ index.php?action=search&tagging_id=$1&seite=$2 [L,QSA]
# PMF tags page
# * http://[...]/tags/<ID>/<HEADER>.htm
RewriteRule tags/([0-9]+)/([^/]+).htm(l?)$ index.php?action=search&tagging_id=$1 [L,QSA]
# the instant response page
RewriteCond %{REQUEST_URI} instantresponse.html$ [NC]
RewriteRule ^(.*)$ index.php?action=instantresponse [L,QSA]
# REST/JSON API
# * http://[...]/api/<ACTION>/<LANGUAGE CODE>/<...>
RewriteRule api/getVersion api.php?action=getVersion [L,QSA]
RewriteRule api/getApiVersion api.php?action=getApiVersion [L,QSA]
RewriteRule api/getCount api.php?action=getCount [L,QSA]
RewriteRule api/search/([a-z-]+)/([a-z-]+)$ api.php?action=search&lang=$1&q=$2 [L,QSA]
RewriteRule api/getCategories api.php?action=getCategories [L,QSA]
RewriteRule api/getFaqs/([a-z-]+)/([0-9]+) api.php?action=getFaqs&lang=$1&categoryId=$2 [L,QSA]
RewriteRule api/getFaq/([a-z-]+)/([0-9]+) api.php?action=getFaq&lang=$1&recordId=$2 [L,QSA]
On Github License
Files
Download PDF of Htaccess file