1CMS文档

命令行模式

1CMS支持命令行模式,可以通过命令行直接访问网站内的页面

PHP命令行配置

前往 php.net 下载php,按需下载对应版本,如本地已安装phpstudy等运行环境,可以直接跳过下载步骤

windows用户可直接搜索 php-8.4.5-Win32-vs17-x64.zip 点击下载,解压到 C:\php\ ,复制php.ini-development文件为php.ini

php.ini文件内搜索以下几行代码,并去掉每行前的;符号

;extension=curl
;extension=gd
;extension=pdo_mysql
;extension=pdo_sqlite
;extension=zip

环境变量配置,快捷键win+r,输入以下命令:

rundll32 sysdm.cpl,EditEnvironmentVariables

在弹出的窗口中,编辑Path变量,新建一个变量,输入php的目录,C:\php\ (phpstudy等环境输入实际的php目录,如:C:\phpstudy\Extensions\php\php8.2.8nts)

快捷键win+r,输入cmd,确定后运行以下命令:

php -v

如显示php版本号,说明已成功配置,

如弹出错误信息,请安装 vc运行库

访问页面

windows在网站根目录中,按住shift键并点击鼠标右键,在此处打开powershell窗口

在窗口中,运行以下命令

php index.php /

系统将返回首页内容.

php index.php /1/

系统将返回对应页面的内容.

如果关闭了伪静态(命令行模式无需配置伪静态规则),则需要将请求地址加上 /index.php/ 如:

php index.php /index.php/1/

对于绑定了域名的应用或栏目.

php index.php http://1cms.com/1/
php index.php https://1cms.com/1/
php index.php //1cms.com/1/

命令行部署测试站点

将以下代码保存为 router.php

<?php
if (php_sapi_name() === 'cli-server') {
    $indexFile='index.php';
    $uri = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);
    $file = __DIR__.$uri;
    if ($uri !== '/' && is_file($file)) {
        return false;
    }
    foreach ($_SERVER as $key => $value) {
        $_SERVER[$key]=str_replace("router.php",$indexFile,$value);
    }
    if($_SERVER['SCRIPT_NAME']!='/'.$indexFile){
        $_SERVER['SCRIPT_NAME']='/'.$_SERVER['SCRIPT_FILENAME'];
    }
    include($indexFile);
}

命令行运行以下命令,访问127.0.0.1:9999 即可在本地部署一个测试站点

php -S 127.0.0.1:9999 router.php