命令行模式
1CMS支持命令行模式,可以通过命令行直接访问网站内的页面
命令行配置
前往 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 /123/
如果未开启伪静态,则需要将请求地址加上 /index.php/ 如:
php index.php /index.php/123/
对于绑定了域名的应用或栏目.
php index.php http://1cms.com/123/
php index.php https://1cms.com/123/
php index.php //1cms.com/123/
访问方法
php index.php cms:common:send https://www.baidu.com
php index.php cms:common:randStr 12 abcdef
php index.php cms:article:get [cid=66618103,where.recommend=1]
[参数=值,参数2=值] 为简单的数组格式参数,复杂参数可以使用json格式
get,post,cookie,token,uid参数
访问网址或方法时支持携带get,post,cookie,token,uid参数,用来模拟浏览器环境
用post参数,向后台登入页提交用户名密码
php index.php /admin?do=admin:login -post [userhash=admin,passwd=666666]
用id=1的用户,访问后台应用列表页
php index.php /admin?do=admin:class:index -uid 1
用token xxxxxx,访问后台应用列表页
php index.php /admin?do=admin:class:index -token xxxxxx
直接访问方法,添加一篇文章
php index.php admin:article:editSave -post [cid=66618103,title=test,datetime=2026-01-01] -uid 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