I F C O N F I G . P H P                   [ KRZ ]   krz.sh

WHAT
php script. shows your ip address, user agent, and related info.
same idea as ifconfig.me and ifconfig.co.

output as html (default), plain text, xml, or json. single values
on request.

USE
live at ip.cmc.pub:
- ?q=text   all, plain text
- ?q=xml    all, xml
- ?q=ip     ip only
- ?q=ua     user agent only

curl -L -X GET https://ip.cmc.pub/\?q\=text

apache rewrite so /ifconfig/xml works without the query string:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ifconfig$ ifconfig.php [L]
RewriteRule ^ifconfig/(.*)$ /ifconfig.php?q=$1 [L]

DEVELOP
install php and composer. fedora:

sudo dnf install php-cli composer

maxmind-db dependency:

composer require maxmind-db/reader:~1.0
composer update

geolite2 database. not in the repo: maxmind-licensed, ~69mb, and stale
the day after you download it. sign up for a free maxmind account, then:

https://www.maxmind.com/en/accounts/current/geoip/downloads

download GeoLite2-City in mmdb form and put GeoLite2-City.mmdb next to
ifconfig.php. without it the page still serves, minus the geo block.

dev server:

sudo php --server localhost:8080 --docroot .

krz.sh