in reply to Re: or operator not working at checking directories
in thread or operator not working at checking directories

if ($homeurl !~ m[^http://|https://]) {

Careful. Your regex tests for http:// at the start of the string, or https:// anywhere in the string. The |-alternative is greedy if not enclosed in brackets. Also, it is better to keep or distinctions like this outside the regex engine.

In reply to the original question, I would suggest that it's semantically much better to write this as:
unless ($homeurl =~ m[^http://] or $homeurl =~ m[^https://]) { &inerror("Your home url has to start with http:// or https://"); }
which to me feels like it more clearly conveys what's meant here.

Finally, though, I want to suggest, in this specific instance, to use the ? quantifier:

unless ($homeurl =~ m[^https?://]) { &inerror("Your home url has to start with http:// or https://"); }
____________
Makeshifts last the longest.