PHP教程说明文档

PHP是一种面向对象的编程语言,设计用于实时生成网页并构建Web应用程序。

域名的初始配置

要运行使用PHP编写的网站,首先需要确保正确配置了域名。在继续下一步之前,请确保以下几点:

  1. 域名已正确添加并配置到我们的DNS系统中。
  2. 已添加了指向PHP类型的WWW页面。

PHP配置

PHP解释器的配置文件位于 /usr/home/LOGIN/.user.ini。你可以为每个目录分别设置自己的 .user.ini 文件。你可以定义在 phpinfo() 中可见的配置项,这些配置项在指令列表中标记为 PHP_INI_PERDIRPHP_INI_ALL,并且还可以设置一些额外的模块变量。

示例

以下示例为域名 DOMAIN 设置 error_reporting 变量。为此,将以下内容写入文件 /usr/home/LOGIN/domains/DOMAIN/.user.ini

ini error_reporting = E_ALL | E_WARNING

增加PHP解释器的内存:

ini memory_limit = 768M

增加 max_execution_time

ini max_execution_time = 360

增加 max_input_vars

ini max_input_vars = 600

将PHP错误日志保存到文件:

ini display_errors = off log_errors = on error_log = /usr/home/LOGIN/domains/DOMAIN/phperror.log

更改临时文件目录的默认位置:

ini upload_tmp_dir = path/to/directory

加载额外的PHP模块

通过在 .user.ini 文件中添加以下条目可以加载额外的PHP模块:

ini anp.extensions = "MODULENAME"

该模块必须由系统管理员预先安装。目前可用的模块包括:amqpsodium(PHP 7.1:libsodium,PHP 7.2至PHP 8.2:sodium),phalcongrpcyaml

要限制PHP文件操作到特定的目录树,请使用 open_basedir。将以下内容写入 /usr/home/LOGIN/domains/DOMAIN/.user.ini 文件(路径指向目录树):

ini open_basedir = "path:/tmp"

建议使用在PHP网站详细信息面板中直接提供的 open_basedir 配置。

更改PHP CLI的设置

要更改PHP CLI的选项,需要在主目录中创建一个 .user.ini 配置文件。创建后,运行以下命令:

bash echo "export PHP_INI_SCAN_DIR=/usr/home/${USER}" >> $HOME/.bash_profile && source $HOME/.bash_profile

PHP版本

默认的PHP版本是8.1。

你可以在创建的 /usr/home/LOGIN/domains/DOMAIN/.htaccess 文件中选择PHP版本。将以下其中一行添加到该文件中:

ini AddType application/x-httpd-php56 .php AddType application/x-httpd-php70 .php AddType application/x-httpd-php71 .php AddType application/x-httpd-php72 .php AddType application/x-httpd-php73 .php AddType application/x-httpd-php74 .php AddType application/x-httpd-php80 .php AddType application/x-httpd-php81 .php AddType application/x-httpd-php82 .php AddType application/x-httpd-php83 .php

此外,服务器上还提供了以下PHP CLI二进制文件命令:

bash $ php $ php56 $ php70 $ php71 $ php72 $ php73 $ php74 $ php80 $ php81 $ php82 $ php83

要在不指定版本号的情况下运行某个PHP CLI版本,可以执行以下命令(以PHP 7.1为例):

bash mkdir -p ~/bin ln -s /usr/local/bin/php71 ~/bin/php echo 'export PATH=$HOME/bin:$PATH' >> $HOME/.bash_profile source $HOME/.bash_profile

还有CGI-FCGI版本:

bash $ php-cgi $ php56-cgi $ php70-cgi $ php71-cgi $ php72-cgi $ php73-cgi $ php74-cgi $ php80-cgi $ php81-cgi $ php82-cgi $ php83-cgi

运行无限制的PHP脚本

通过SSH登录后,可以运行不受时间限制的PHP脚本。要运行脚本,请使用PHP CLI,例如:

bash php ~/domains/shop.example.com/public_html/product_import.php

第二种方法是运行嵌入式PHP Web服务器。具体步骤如下:

  1. 保留TCP端口。

  2. 登录SSH。

  3. 转到包含PHP脚本的目录(例如,所选域名的 public_html 目录): bash cd /usr/home/LOGIN/domains/DOMAIN/public_html

  4. 使用以下命令在保留的端口上启动服务器: bash php73 -S 0.0.0.0:RESERVED_PORT 你还可以选择其他PHP版本,例如 php72

  5. 为了让服务器在退出后继续运行,可以在screen会话中启动它: bash screen -dm sh -c "php73 -S 0.0.0.0:RESERVED_PORT"

  6. 可选:将PROXY类型的WWW页面添加到保留端口。

    通过以下地址可以访问脚本: bash http://sX.serv00.com:RESERVED_PORT

例如,在 s4.serv00.com 服务器上,保留端口为 12345,访问地址为:

bash http://s4.serv00.com:12345/product_import.php

使用 mail() 函数

在使用 mail() 函数之前,请先阅读适用的规则。