ข้ามไปที่เนื้อหาหลัก

การตั้งค่า App.php ใน Codeigniter 4

 แนวทางในการตั้งค่า (\App\Configs\App.php) ดังนี้

<?php

namespace Config;

use CodeIgniter\Config\BaseConfig;

class App extends BaseConfig
{
    /**
     * --------------------------------------------------------------------------
     * Base Site URL
     * --------------------------------------------------------------------------
     *
     * URL สำหรับ root ของ CodeIgniter ของคุณ โดยทั่วไป, นี่จะเป็น URL หลักของคุณ
     * โดยมี trailing slash:
     *
     *    http://example.com/
     */
    public string $baseURL = 'http://localhost:8080/';

    /**
     * Hostnames ที่ได้รับอนุญาตใน Site URL นอกเหนือจาก hostname ใน baseURL
     * ถ้าคุณต้องการรับข้อมูลจาก Hostnames หลาย ๆ ตัว, ให้ตั้งค่านี้
     *
     * เช่น เมื่อ Site URL ของคุณ ($baseURL) คือ 'http://example.com/'
     * และเว็บไซต์ของคุณยอมรับ 'http://media.example.com/' และ 'http://accounts.example.com/':
     *          ['media.example.com', 'accounts.example.com']
     *
     * @var string[]
     * @phpstan-var list<string>
     */
    public array $allowedHostnames = [];

    /**
     * --------------------------------------------------------------------------
     * Index File
     * --------------------------------------------------------------------------
     *
     * โดยทั่วไป, นี่จะเป็นไฟล์ index.php ของคุณ, ยกเว้นกรณีที่คุณเปลี่ยนชื่อไฟล์
     * ถ้าคุณใช้ mod_rewrite เพื่อลบหน้า ให้ตั้งค่าตัวแปรนี้เพื่อให้เป็น blank
     */
    public string $indexPage = '';

    /**
     * --------------------------------------------------------------------------
     * URI PROTOCOL
     * --------------------------------------------------------------------------
     *
     * รายการนี้กำหนดว่า server global ไหนควรใช้เพื่อดึง URI string
     * การตั้งค่าเริ่มต้น 'REQUEST_URI' ทำงานสำหรับเซิร์ฟเวอร์ส่วนมาก
     * หากลิงค์ของคุณไม่ทำงาน, ลองใช้หนึ่งในแบบทดสอบที่อร่อยต่อปากนี้:
     *
     * 'REQUEST_URI'    = $_SERVER['REQUEST_URI']
     * 'QUERY_STRING'   = $_SERVER['QUERY_STRING']
     * 'PATH_INFO'      = $_SERVER['PATH_INFO']
     *
     * คำเตือน: หากคุณตั้งค่าเป็น 'PATH_INFO', URI จะถูก URL-decoded เสมอ!
     */
    public string $uriProtocol = 'REQUEST_URI';

    /**
     * --------------------------------------------------------------------------
     * Default Locale
     * --------------------------------------------------------------------------
     *
     * Locale แทบจะแทนภาษาและที่ตั้งที่ผู้เยี่ยมชมของคุณกำลังดูเว็บไซต์จาก มันมีผลต่อสตริงภาษา
     * และสตริงอื่น ๆ (เช่นเครื่องหมายสกุลเงิน, ตัวเลข, ฯลฯ) ที่โปรแกรมของคุณควรทำงานภายใต้สำหรับคำขอนี้
     */
    public string $defaultLocale = 'en';

    /**
     * --------------------------------------------------------------------------
     * Negotiate Locale
     * --------------------------------------------------------------------------
     *
     * ถ้าเป็นจริง, วัตถุ Request ปัจจุบันจะกำหนดภาษาที่จะใช้โดยอัตโนมัติ
     * โดยดูค่าของหัวข้อ Accept-Language
     *
     * ถ้าเป็นเท็จ, จะไม่มีการตรวจสอบโดยอัตโนมัติ
     */
    public bool $negotiateLocale = false;

    /**
     * --------------------------------------------------------------------------
     * Supported Locales
     * --------------------------------------------------------------------------
     *
     * ถ้า $negotiateLocale เป็นจริง, อาร์เรย์นี้ระบุลิสต์ locales ที่รองรับ
     * โดยแบบจากล่างขึ้นบนเรียงลำดับความสำคัญ หากไม่พบตรงกัน, จะใช้ locale แรก
     *
     * IncomingRequest::setLocale() ยังใช้รายการนี้
     *
     * @var string[]
     */
    public array $supportedLocales = ['th','en'];

    /**
     * --------------------------------------------------------------------------
     * Application Timezone
     * --------------------------------------------------------------------------
     *
     * Timezone เริ่มต้นที่จะใช้ในแอปพลิเคชันของคุณเพื่อแสดงวันที่ด้วย date helper
     * และสามารถดึงได้ผ่าน app_timezone()
     *
     * @see https://www.php.net/manual/en/timezones.php สำหรับรายการของ Timezones ที่รองรับโดย PHP.
     */
    public string $appTimezone = 'Asia/Bangkok';

    /**
     * --------------------------------------------------------------------------
     * Default Character Set
     * --------------------------------------------------------------------------
     *
     * รายการนี้กำหนดว่า character set ใดถูกใช้เป็นค่าเริ่มต้นในวิธีการต่าง ๆ
     * ที่ต้องการ character set เพื่อให้การให้บริการ
     *
     * @see http://php.net/htmlspecialchars สำหรับรายการของ charsets ที่รองรับ.
     */
    public string $charset = 'UTF-8';

    /**
     * --------------------------------------------------------------------------
     * Force Global Secure Requests
     * --------------------------------------------------------------------------
     *
     * ถ้าเป็นจริง, นี้จะบังคับทุกคำขอที่ทำกับแอปพลิเคชันนี้ที่จะทำผ่านการเชื่อมต่อที่ปลอดภัย (HTTPS)
     * หากคำขอที่เข้ามาไม่ปลอดภัย, ผู้ใช้จะถูกนำไปยังเวอร์ชันที่ปลอดภัยของหน้า
     * และหัวข้อ HTTP Strict Transport Security จะถูกตั้งค่า
     */
    public bool $forceGlobalSecureRequests = false;

    /**
     * --------------------------------------------------------------------------
     * Reverse Proxy IPs
     * --------------------------------------------------------------------------
     *
     * หากเซิร์ฟเวอร์ของคุณอยู่ท้าย reverse proxy, คุณต้องระบุ IP addresses ของ proxy
     * ที่ CodeIgniter ควรเชื่อถือ headers เช่น X-Forwarded-For หรือ Client-IP
     * เพื่อระบุที่อยู่ IP ของผู้เยี่ยมชม
     *
     * คุณต้องตั้งค่าที่อยู่ IP ของ proxy หรือที่อยู่ IP พร้อม subnets และ
     * หัวข้อ HTTP สำหรับที่อยู่ IP ของ client
     *
     * นี่คือตัวอย่างบางประการ:
     *     [
     *         '10.0.1.200'     => 'X-Forwarded-For',
     *         '192.168.5.0/24' => 'X-Real-IP',
     *     ]
     *
     * @var array<string, string>
     */
    public array $proxyIPs = [];

    /**
     * --------------------------------------------------------------------------
     * Content Security Policy
     * --------------------------------------------------------------------------
     *
     * เปิดใช้งาน Content Secure Policy ของ Response เพื่อจำกัดที่มาที่ใช้สำหรับรูปภาพ, สคริปต์, ไฟล์ CSS, เสียง, วิดีโอ, ฯลฯ
     * หากเปิดใช้งาน, Response object จะเติมค่าเริ่มต้นสำหรับนโยบายจากไฟล์ `ContentSecurityPolicy.php`
     * Controllers สามารถเพิ่มเข้าไปในข้อจำกัดเหล่านี้ได้ที่เวลารันไทม์
     *
     * สำหรับเข้าใจมากขึ้นเกี่ยวกับ CSP, ดูเอกสารเหล่านี้:
     *
     * @see http://www.html5rocks.com/en/tutorials/security/content-security-policy/
     * @see http://www.w3.org/TR/CSP/
     */
    public bool $CSPEnabled = false;
}

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

การตั้งค่า baseController

  <?php namespace App\Controllers ; use CodeIgniter\ Controller ; use CodeIgniter\HTTP\ CLIRequest ; use CodeIgniter\HTTP\ IncomingRequest ; use CodeIgniter\HTTP\ RequestInterface ; use CodeIgniter\HTTP\ ResponseInterface ; use Psr\Log\ LoggerInterface ; /**  * Class BaseController  *  * BaseController provides a convenient place for loading components  * and performing functions that are needed by all your controllers.  * Extend this class in any new controllers:  *     class Home extends BaseController  *  * For security be sure to declare any new methods as protected or private.  */ abstract class BaseController extends Controller {     /**      * Instance of the main Request object.      *      * @var CLIRequest | IncomingRequest      */     protected $request ;     /**      * An array of helpers to be lo...

จะลบ index.php ออกจาก URL ใน CodeIgniter 4 ได้อย่างไร

CodeIgniter คืออะไร? CodeIgniter เป็น  เฟรมเวิร์กที่ขับเคลื่อนด้วย PHP  สำหรับการพัฒนาแอปพลิเคชันอย่างรวดเร็ว ในขณะที่สร้างเว็บแอปพลิเคชัน เราใช้เวลาส่วนใหญ่ในการเขียนโค้ดเดิมซ้ำแล้วซ้ำอีก เฟรมเวิร์กเป็นบล็อกเริ่มต้นและลดจำนวนโค้ดที่จำเป็นในการสร้างเว็บไซต์ให้เหลือน้อยที่สุด CodeIgniter เป็นเฟรมเวิร์กแอปพลิเคชันเว็บ  PHP เชิงวัตถุ  ที่เป็นโอเพ่นซอร์สและใช้งานง่ายฟรี CodeIgniter ใช้ MVC โดยมีไลบรารีสำหรับเชื่อมต่อกับฐานข้อมูลและดำเนินการต่างๆ เช่น การส่งอีเมล การอัปโหลดไฟล์ ฯลฯ สำหรับการใช้ Codeigniter การมี  ความรู้พื้นฐานเกี่ยวกับไวยากรณ์ PHP และวิธีการโต้ตอบกับฐานข้อมูลและ HTML ถือเป็นเรื่องดี ทำไมต้องลบ index.php? การลบ index.php จะทำให้ URL ดูสะอาดตาและเป็นมืออาชีพ กรอบงาน Codeigniter ให้บริการมุมมองทั้งหมดผ่านไฟล์เดียว index.php หากไม่มีไฟล์นี้ ไม่มีโมเดล/มุมมอง/คอนโทรลเลอร์จะไม่ทำงาน เราจำเป็นต้องลบ index.php ออกจาก URL ด้วยการกำหนดค่าที่เหมาะสม ไม่เช่นนั้นมันจะแสดงหน้า 404 การลบไฟล์ index.php เปิดไฟล์ \App\Configs\App.php ในโปรแกรมแก้ไขข้อความและลบ index....

การตั้งค่าให้ใช้ Spark Ci4 ได้ภายใน server ของ Synology NAS

 หากท่านเข้า terminal ของ vs code แล้วเกิดอาการแสดง error ให้ท่านดำเนินการดังนี้ ตัวอย่าง error php spark Fatal error: Uncaught InvalidArgumentException: The .env file is not readable: \\YOUR_SERVER\WEB\esign-approve\.env in \\ YOUR_SERVER \WEB\ (ชื่อโปรเจคของท่าน) \vendor\codeigniter4\framework\system\Config\DotEnv.php on line 62 InvalidArgumentException: The .env file is not readable: \\\\YOUR_SERVER\WEB\ (ชื่อโปรเจคของท่าน) \.env in \\\\YOUR_SERVER\WEB\ (ชื่อโปรเจคของท่าน) \vendor\codeigniter4\framework\system\Config\DotEnv.php on line 62 Call Stack:     0.0354     413520   1. {main}() \\\\YOUR_SERVER\WEB\ (ชื่อโปรเจคของท่าน) \spark:0     4.1167    2077848   2. CodeIgniter\Config\DotEnv->load() \\\\YOUR_SERVER\WEB\ (ชื่อโปรเจคของท่าน) \spark:79     4.1167    2077848   3. CodeIgniter\Config\DotEnv->parse() \\\\YOUR_SERVER\WEB\ (ชื่อโปรเจคของท่าน) \vendor\codeigniter4\framework\sys...