Skip to main content





Yes, back when SNI first enabled us to move away from IP based VirtualHost containers in Apache to the Name Based VirtualHost where many websites shared a single IP address, there were some interesting issues, such as the default VirtualHost being displayed if you didn't also specify non RFC compliant hostnames as aliases.

For example, there was a trend at the time to ignore proper usage of hostnames, with "www" generally being used as the traditional defacto, default hostname for a host delivering HTTP. i.e.,(http://www.SLD.TLD).

Similarly, you would usually name your first FTP server "ftp", and the protocol was specified as "ftp", yielding ftp://ftp.SLD.TLD, and gopher would be gopher://hostname.SLD.TLD in the address bar of your browser. Other protocols followed that same "protocol://hostname.4LD.3LD.SLD.TLD format, these child zones being a very common practice in universities in the .EDU and .MIL TLDs, as well as the .UK, .FR, .AU, .US, and some other ccTLD's (Australia has recently dropped that whole requirement for .com.au and .net.au finally lol).

So, although it was merely convention to name your hosts after the services they were delivering, like "www, www2, www3, Etc.", or ftp, gopher, Etc., Those were only conventions and you could name them whatever you wanted.

But you weren't supposed to use the canonical domain name as the hostname!

Nevertheless, as the "web" became more ubiquitous and average users, oblivious to other protocols, began to ask the question, "why do I need to type in all those extra characters for www.ibm.com (like http://www3.ibm.com) instead of just ibm.com?", in conjunction with the popular trend of browsers defaulting to "http://" protocol (unless you manually specified another protocol), many providers started to accommodate those hosting customers by breaking with the RFCs and pointing DNS A RRs to "@" or "SLD.TLD" - the canonical domain name, akong with another A record for "hostname.SLD.TLD" (usually still using www for the first website).

Now, when you query a DNS server for a hostname, it returns an IP address, no problem so far. And with IP based hosting it really doesn't matter what you call your website in your Apache server's VirtualHost container - it's just going to return a web page for the server at that IP address, coz that's all it's being asked: "Do you have HTML to send me for the IP address on this HTTP server?", And then it sends the page - coz there's only one website per IP address!

But with HTTP 1.1 and SNI it's a compound question:

"Do you have HTML to send me for the IP address with the hostname of 'www.SLD.TLD' on this HTTP server?"

If yes, then serve the page. If not however, it gets a little weird. The default VirtualHost container is usually the first one defined in httpd.conf, so on many web servers that's the page that says - "It Works!" lolz.

So, in DNS you had to have two A Resource Records (RRs) one for say, 'www', and one for '@', or you could use a CNAME RR if you're one of those lame-o boneheads (bad form - don't use CNAME's!), AND... You also either need to specify two <Named VirtualHost> containers pointing to the same directory, or just one with an Alias directive.

NOTE: you 'could' point to two different directories, but in 99% of all cases, why the heck would you do that?

I dunno why, but maybe coz many hosting providers didn't understand how to write a DNS zonefile in BIND or maybe coz they didn't grasp that the browser was actually now asking for an actual hostname with it's request to the IP address that httpd was listening on, but this resulted in a lot of "no joy" when people neglected to type in the "www", resulting in delivery of either someone else's website or the comical "It Works!" page (ROFLMAOPMP).

Adding insult to injury, the opposite could be the case when leaving out the hostname and just typing in the domain into the address bar, depending on how httpd.conf was configured - many knowledgeable sysadmins resisted this the because it wasn't RFC compliant, but eventually (the customer's money is always right), most default websites today just serve the canonical domain name as the main (or maybe even the only) hostname in a VirtualHost container in Apache with an alias to the 'www' hostname (or server block on Nginx.

As a little epilog, that came back to bite hosting providers, and moreso, their customers, in the last decade or so when the evil Cloudflare and ever popular WordPress came into prominence - To enforce their predatory vendor lock-in practices, Cloudflare offered free CDN services to people with websites... But only for one hostname per domain, AND, that hostname HAD TO BE "www", lolz...

Well, after a couple of decades of dumbing down the user and people setting the main name of their WordPress sites to, "SLD.TLD", this would cause, in the best scenario, to have their websites served to most people without the (so-called) benefit of Cloudflare's CDN... Unless you could retrain every user on the entire planet to type in the actual hostname (www), OR... pay Cloudflare lolz.... 🤘🤡🤘

Well my friend, That's all I've got right now, I hope you found that a bit amusing in a sort of nostalgic kinda way.

#tallship #ramblings #lamentations #humor #geek porn #BOFH #comedy

.






FindBin-1.53


Locate directory of original perl script

Changes for 1.53 - 2023-01-23
  • Update bug reporting location.

https://metacpan.org/dist/FindBin


Lingua-RU-Numeral-0.031


Perl extension for generate Russian wording of numerals from the natural numbers and 0 (zero).

Changes for 0.031
  • add to Makefile.PL module Test::More::UTF8
  • POD, README, and Makefile.PL revised

https://metacpan.org/dist/Lingua-RU-Numeral


Exporter-5.77


Implements default import method for modules

Changes for 5.77
  • Document non-inheriting as default mechanism
  • Make Exporter strict and warnings compliant

https://metacpan.org/dist/Exporter



FunctionalPerl-0.72.72


FunctionalPerl - functional programming in Perl

Changes for 0.72.72
  • Repl: add :S mode with Perl::Tidy
  • Struct: allow to export constructors via _END_
  • Struct: add all_field_names
  • Struct: add ":defaults" base class feature
  • Struct: display FP::Failure values from predicates
  • List: add cartesian_product, nonempty_list_of, improper_map, improper_filtermap, filtermap, improper_last, list_merge
  • Array,Array/Mixin: add filtermap, merge
  • List,Stream: add split
  • HashSet: add hashset, is_hashset, is_uhashset, hashset_values, hashset_map, hashset_filter, hash_to_...function
  • Hash: add hash_map, hash_filter, hash_key_filter, hash_value_filter
  • Abstract/Sequence: add hashset, uhashset
  • Predicates: add is_path_string, is_path_segment_string, sequence_of
  • Create FP::Cmp, move cmp_complement to it, add cmp_then
  • xperlfunc: add maybe_getfile_utf8, improve spawn
  • xopen: add stdin, stdout, stderr
  • Htmlparse: handle XML namespaces (hack)
  • Text/CSV: various improvements
  • various fixes
  • unfinished: Chj:🤐perlfunc:🤐localtime: add iso_week_number + more

https://metacpan.org/dist/FunctionalPerl



JSON-Schema-Modern-0.562


Validate data against a schema

Changes for 0.562 - 2023-01-22T00:49:07Z
  • bump a test prereq to fix a mismatched exception message

https://metacpan.org/dist/JSON-Schema-Modern





SQL-PatchDAG-0.110


A minimal DB schema patch manager

Changes for 0.110
  • Updated packaging
  • Correct application of PerlIO layers in constructor

https://metacpan.org/dist/SQL-PatchDAG



CPAN-Perl-Releases-5.20230120


Mapping Perl releases on CPAN to the location of the tarballs

Changes for 5.20230120
  • Change: 9a8ef1e706cdc3a4577c6671ee60075a3fa9425b Author: Chris 'BinGOs' Williams <chris@bingosnet.co.uk> Date : 2023-01-20 15:34:09 +0000

https://metacpan.org/dist/CPAN-Perl-Releases





Music-ScaleNote-0.0705


Manipulate the position of a note in a scale

Changes for 0.0705 - 2023-01-20T00:05:31Z
  • Add the eg/tonnetz program.
  • Improve documentation.
  • Improve tests.

https://metacpan.org/dist/Music-ScaleNote


Net-Cisco-FMC-v1-0.007001


Cisco Firepower Management Center (FMC) API version 1 client library

Changes for 0.007001 - 2023-01-20T08:24:02+01:00
  • fix api.t when FMC environment variables aren't set

https://metacpan.org/dist/Net-Cisco-FMC-v1


Affix-0.09_06-TRIAL


A Foreign Function Interface eXtension

Changes for 0.09_06 - 2023-01-20T05:35:31Z
  • Struct[] may now contain a code reference
  • CodeRef, Any, etc. are now properly handled as aggregates

https://metacpan.org/dist/Affix


Mojo-Run3-1.03


Run a subprocess and read/write to it

Changes for 1.03 - 2023-01-20T14:19:44Z
  • Add support for manually closing the PTY slave
  • Add support for "pipe" shortcut for driver()

https://metacpan.org/dist/Mojo-Run3





IO-Socket-SSL-2.080


Nearly transparent SSL encapsulation for IO::Socket::INET.

Changes for 2.080 - 2023-01-18
  • move certs into t/ so that distributions like CentOS don't install the test certificates as part of the documentation any longer.

https://metacpan.org/dist/IO-Socket-SSL






P.S. One last thing - try not to worry about what bacula does if your
clock somehow goes wrong and decides that it is 2037. Or 1970. Or last
week. 😀
- Graham Keeling

(Date: Wed, 12 Jan 2011 17:41:42 +0000)

tallship reshared this.



The creator of DOS

"IBM wanted CP/M prompts. It made me throw up."

— Tim Paterson



FASTX-Reader-1.10.0-TRIAL


A simple module to parse FASTA and FASTQ files, supporting compressed files and paired-ends.

Changes for 1.10.0 - 2023-01-13
  • `new()` FASTX::Reader method now supports a named parameter instantiation, e.g. `FASTX::Reader->new(-file => 'file.fastq')`
  • `new()` FASTX::Seq method now supports a named parameter instantiation, e.g. `FASTX::Seq->new(-seq => 'CACCA')`
  • Added `copy()` method to FASTX::Seq
  • Added quality methods to FASTX::Seq:
  • Test updates, minor changes

https://metacpan.org/dist/FASTX-Reader


Mojo-Run3-1.02


Run a subprocess and read/write to it

Changes for 1.02 - 2023-01-18T17:58:48Z
  • Fix keeping filehandles open until the whole process has ended

https://metacpan.org/dist/Mojo-Run3



TUWF-1.5


The Ultimate Website Framework

Changes for 1.5 - 2023-01-18
  • Add tuwf->req() method for storing request-local data
  • Add tuwf->captures() as alternative to handler arguments
  • Add support for Max-Age and SameSite properties in resCookie()
  • Add support for JSON:😛P and Cpanel::JSON:😛P
  • Add support for calling dbPage() in scalar context
  • Add "onerror" and "undefbool" built-in validations
  • Add support for subroutine arguments to 'default' validation option
  • Add TUWF::Validate::Interop::elm_decoder() (undocumented)
  • Add support for undef and concat attributes in TUWF:🤐ML
  • Add TUWF:🤐ML:🤐ml_string() function
  • Add summary tag to TUWF:🤐ML
  • Add "db_connect" hook
  • Add "fastcgi_max_requests" setting
  • Add support for graceful process shutdown in FastCGI mode
  • Add support for output compression for resJSON, resFile and resBinary
  • Fix handling recursion from the log_format subroutine
  • Fix encoding of HTTP response headers
  • Fix calling error_404_handler before the "after" hooks.
  • Fix handling of SIGCHLD when using the builtin HTTP server
  • Fix logging during startup
  • Fix input modification on TUWF::Validate with unknown=>"reject" hashes
  • Fix handling of HTTP DELETE requests
  • Fix handling for HTTP 204 responses
  • Remove error on resFile() path traversal, just return a 404 instead
  • Disallow IP address hosts as part of email validation
  • Use Perl built-in utf8 functions instead of Encode module

https://metacpan.org/dist/TUWF


Util-H2O-More-0.2.4


provides baptise, a drop-in replacement for bless; like if bless created accessors for you. This module also provides additional methods built using h2o or o2h from Util::H2O that allow for the incremental addition of OOP into existing or small scale Perl code without having to fully commit to a Perl OOP framework or compromise one's personal Perl style.

Changes for 0.2.4
  • changed ini2o to ini2h2o, o2ini to h2o2ini to make the naming more consistent with already existing helper apps, like opt2h2o (sorry if this causes anyone problems; I don't assume many people use this too heavily atm).

https://metacpan.org/dist/Util-H2O-More









App-DiffPDFText-0.005


Diff the text of two PDF documents

Changes for 0.005 - 2022-10-07
  • Allow disabling fmt using --no-pdf-fmt.
  • Add missing dependency to CLI::Meta::diff.

https://metacpan.org/dist/App-DiffPDFText



App-Rakubrew-33


Raku environment manager

Changes for 33
  • Fix `moar-blead` command. Moar didn't change branch names.

https://metacpan.org/dist/App-Rakubrew


Class-Method-Modifiers-2.14


Provides Moose-like method modifiers

Changes for 2.14 - 2023-01-16T21:26:04Z
  • remove Test::Fatal and Test::Needs from test prereqs (PRs #7, #8, Graham Knop)

https://metacpan.org/dist/Class-Method-Modifiers
#7 #8


App-OpenVZ-BCWatch-0.05


Monitor the OpenVZ user_beancounters file

Changes for 0.05 - 2023-01-16
  • Merged development version to stable.

https://metacpan.org/dist/App-OpenVZ-BCWatch