Changeset 679 for trunk/lib


Ignore:
Timestamp:
May 14, 2019 2:17:07 AM (5 years ago)
Author:
anonymous
Message:

Fix minor bugs. Detect http port and add to site_port, site_url, and page_url params of App.

Location:
trunk/lib
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/lib/App.inc.php

    r676 r679  
    7878        'site_name' => null,
    7979        'site_email' => '', // Set to no-reply@HTTP_HOST if not set here.
    80         'site_hostname' => '', // The hostname of this application (if not set, use a cleaned HTTP_HOST environment variable).
     80        'site_hostname' => '', // The hostname of this application (if not set, derived from HTTP_HOST).
     81        'site_port' => '', // The hostname of this application (if not set, derived from HTTP_HOST).
    8182        'site_url' => '', // URL to the root of the site (created during App->start()).
    8283        'page_url' => '', // URL to the current page (created during App->start()).
     
    146147        'db_pass' => null,
    147148
    148         // And for CLI scripts, which should include a JSON file at this specified location in the include path.
     149        // CLI scripts will need this JSON file in the include path.
    149150        'db_auth_file' => 'db_auth.json',
    150151
     
    479480         */
    480481
    481         // To get a safe hostname, remove host port and invalid hostname characters.
     482        // To get a safe hostname, remove port and invalid hostname characters.
    482483        $safe_http_host = preg_replace('/[^a-z\d.:-]/', '', strtok(getenv('HTTP_HOST'), ':'));
     484        // If strtok() matched a ':' in the previous line, the rest of the string contains the port number (or FALSE)
     485        $safe_http_port = preg_replace('/[^0-9]/', '', strtok(''));
    483486        if ('' != $safe_http_host && '' == $this->getParam('site_hostname')) {
    484487            $this->setParam(array('site_hostname' => $safe_http_host));
     488        }
     489        if ('' != $safe_http_port && '' == $this->getParam('site_port')) {
     490            $this->setParam(array('site_port' => $safe_http_port));
    485491        }
    486492
     
    489495        // Not available on CLI scripts obviously.
    490496        if ('' != $safe_http_host && '' == $this->getParam('site_url')) {
    491             $this->setParam(array('site_url' => sprintf('%s://%s', (getenv('HTTPS') ? 'https' : 'http'), $safe_http_host)));
     497            $this->setParam(array('site_url' => sprintf('%s://%s%s', (getenv('HTTPS') ? 'https' : 'http'), $safe_http_host, (preg_match('/^(|80|443)$/', $safe_http_port) ? '' : ':' . $safe_http_port))));
    492498        }
    493499
     
    495501        // Also not available on CLI scripts obviously.
    496502        if ('' != $safe_http_host) {
    497             $this->setParam(array('page_url' => sprintf('%s://%s%s', (getenv('HTTPS') ? 'https' : 'http'), $safe_http_host, getenv('REQUEST_URI'))));
     503            $this->setParam(array('page_url' => sprintf('%s%s', $this->getParam('site_url'), getenv('REQUEST_URI'))));
    498504        }
    499505
     
    13961402
    13971403        if (preg_match('!^/!', $url)) {
    1398             // If relative URL is given, prepend correct local hostname.
    1399             $scheme = getenv('HTTPS') ? 'https' : 'http';
    1400             $host = $this->getParam('site_hostname');
    1401             $url = sprintf('%s://%s%s', $scheme, $host, $url);
     1404            // If relative URL is given, prepend site_url, which contains: scheme://hostname[:port]
     1405            $url = sprintf('%s%s', $this->getParam('site_url'), $url);
    14021406        }
    14031407
     
    17051709
    17061710    /*
    1707     * Set timezone used internally by PHP.
     1711    * Set timezone used internally by PHP. See full list at https://www.php.net/manual/en/timezones.php
    17081712    *
    17091713    * @access   public
  • trunk/lib/DB.inc.php

    r665 r679  
    339339        $debugqry = preg_replace("/\n[\t ]+/", "\n", $query);
    340340        if ($this->getParam('db_always_debug') || $debug) {
    341             echo "<!-- ----------------- Query $this->_query_count ---------------------\n$debugqry\n-->\n";
     341            if ($debug > 1) {
     342                dump($debugqry, true, SC_DUMP_PRINT_R, __FILE__, __LINE__);
     343            } else {
     344                echo "<!-- ----------------- Query $this->_query_count ---------------------\n$debugqry\n-->\n";
     345            }
    342346        }
    343347
  • trunk/lib/Utilities.inc.php

    r672 r679  
    14521452    $ch = curl_init($url);
    14531453    curl_setopt($ch, CURLOPT_TIMEOUT, 5);
     1454    curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
    14541455    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    1455     curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
     1456    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
    14561457    curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36");
    14571458    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // Don't pass through data to the browser.
Note: See TracChangeset for help on using the changeset viewer.