文档树以及PHP扩展名有关问题
文档树以及PHP扩展名问题
在《PHP和MySQL Web开发》一书中,看到这样一段文字,表示不太理解,希望高手能够解答一下
PHP并不会查看所需文件扩展名。这就意味着,只要不想直接调用这个文件,就可以任意命名该文件。当使用require()语句载入文件时,它会作为PHP文件的一部分被执行。
通常,如果PHP语句放在一个HTML文件(例如,名为page.html)中时,它们是不会被处理的。PHP通常用来解析扩展名被定义成如.php的文件。(在Web服务器配置文件中可能是这样)但是,如果通过require()语句载入这个page.html,文件内的任何PHP命令都会被处理,因此,可以使用任何扩展名来命名包含文件,但要尽量遵循一个约定,例如将扩展名命名为.inc是一个很好的办法。
需要注意的一个问题是,如果扩展名为.inc或一些其他的非标准扩展名的文件保存在Web文档树中,而且用户可以在浏览器中直接载入它们,用户将可以以普通文本的形式查看源代码,包括任何密码,因此,将被包含文件保存在文档树之外,或使用标准的文件扩展名是非常重要的。
这段文字当中提到,将扩展名命名为.inc是很好的办法,这个是为什么呢? 其次,当中提到的文档树又是什么?最后,如何将包含文件保存在文档树之外
------解决方案--------------------
就是把被包含的php文件防在网站文档目录外, 且保证apache的运行用户有权访问该目录。
比如apache默认目录设置在/var/htdoc下,那么你可以把被包含php文件命名为.inc后缀,然后放在/var目录下,这样浏览器就没法访问到/var之下的文件了。

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

Visual Studio Code, also known as VS Code, is a free source code editor — or integrated development environment (IDE) — available for all major operating systems. With a large collection of extensions for many programming languages, VS Code can be c

JWT is an open standard based on JSON, used to securely transmit information between parties, mainly for identity authentication and information exchange. 1. JWT consists of three parts: Header, Payload and Signature. 2. The working principle of JWT includes three steps: generating JWT, verifying JWT and parsing Payload. 3. When using JWT for authentication in PHP, JWT can be generated and verified, and user role and permission information can be included in advanced usage. 4. Common errors include signature verification failure, token expiration, and payload oversized. Debugging skills include using debugging tools and logging. 5. Performance optimization and best practices include using appropriate signature algorithms, setting validity periods reasonably,

A string is a sequence of characters, including letters, numbers, and symbols. This tutorial will learn how to calculate the number of vowels in a given string in PHP using different methods. The vowels in English are a, e, i, o, u, and they can be uppercase or lowercase. What is a vowel? Vowels are alphabetic characters that represent a specific pronunciation. There are five vowels in English, including uppercase and lowercase: a, e, i, o, u Example 1 Input: String = "Tutorialspoint" Output: 6 explain The vowels in the string "Tutorialspoint" are u, o, i, a, o, i. There are 6 yuan in total

This tutorial demonstrates how to efficiently process XML documents using PHP. XML (eXtensible Markup Language) is a versatile text-based markup language designed for both human readability and machine parsing. It's commonly used for data storage an

Static binding (static::) implements late static binding (LSB) in PHP, allowing calling classes to be referenced in static contexts rather than defining classes. 1) The parsing process is performed at runtime, 2) Look up the call class in the inheritance relationship, 3) It may bring performance overhead.

What are the magic methods of PHP? PHP's magic methods include: 1.\_\_construct, used to initialize objects; 2.\_\_destruct, used to clean up resources; 3.\_\_call, handle non-existent method calls; 4.\_\_get, implement dynamic attribute access; 5.\_\_set, implement dynamic attribute settings. These methods are automatically called in certain situations, improving code flexibility and efficiency.

HTML defines the web structure, CSS is responsible for style and layout, and JavaScript gives dynamic interaction. The three perform their duties in web development and jointly build a colorful website.
