Bash不执行certbot
命令,如何找出原因?
当我使用ls
命令测试正常的bash功能
php:
$cmd = "/bin/bash /usr/local/openresty/nginx/html/pHpServer-PG/api/cert.bash test.com";
echo $cmd;
$ww = shell_exec($cmd);
var_dump($ww);
重击:
#!/bin/bash
certbot certonly --rsa-key-size 4096 --webroot --agree-tos --no-eff-email --email email@gmail.com -w /usr/local/openresty/nginx/html -d $1 -d admin.$1 -d www.$1
我以root用户身份使用php-fpm和nginx
某些提取bash错误的方法吗?
答案 0 :(得分:0)
您是否在代码的-d $1 -d admin.$1 -d www.$1
端口中指定了变量,所以$1
吗?
这表明您要将域名传递给代码。
您还可以使用bash -x
运行bash脚本,例如如果您将脚本命名为certificate.sh
,请运行
bash -x certificate.sh domain.com
其中domain.com
是您的域名。