krz/ifconfig.php

clone: git clone https://gitbay.org/krz/ifconfig.php.git

main:

100644 .gitignore217
100644 LICENSE639
100644 README.nfo2181
100644 composer.json63
100644 composer.lock3186
100644 htaccess181
100644 ifconfig.php4859
┌──────────────────────────────────────────────────────────────┐
│  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                                                      │
└──────────────────────────────────────────────────────────────┘