加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

bash – 如何通过shell脚本以编程方式更改php.ini值?

发布时间:2020-12-15 18:34:28 所属栏目:安全 来源:网络整理
导读:基本上,我正在尝试设置一个 shell脚本,让我在新服务器上自动配置一些参数 特别是,我想在php.ini中设置 error_log = /var/log/php_errors.log error_reporting = E_ALL ~E_NOTICE ~E_STRICT ?E_DEPRECATED 在我的bash脚本中,我有这个: ERROR_REPORTING="erro
基本上,我正在尝试设置一个 shell脚本,让我在新服务器上自动配置一些参数

特别是,我想在php.ini中设置

error_log = /var/log/php_errors.log
error_reporting = E_ALL& ~E_NOTICE& ~E_STRICT& ?E_DEPRECATED

在我的bash脚本中,我有这个:

ERROR_REPORTING="error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED"
ERROR_LOG="/var/log/php_errors.log"

#CREATE LOG FILE 
sed -i 's/error_reporting = .*/error_reporting = '${ERROR_REPORTING}'/' /etc/php.ini
touch $ERROR_LOG
chown apache:apache $ERROR_LOG
#The ; in the next line is because the line is commented by default on RHEL5
sed -i 's/;error_log = .*/error_log = '${ERROR_LOG}'/' /etc/php.ini

但是,这似乎不起作用,错误对我来说不明显..有人可以纠正我的错误吗?

您需要将最外面的单引号更改为双引号并删除变量名称周围的单引号.
ERROR_REPORTING="E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED"
ERROR_LOG="/var/log/php_errors.log"

#CREATE LOG FILE 
sed -i "s/error_reporting = .*/error_reporting = ${ERROR_REPORTING}/" /etc/php.ini
touch $ERROR_LOG
chown apache:apache $ERROR_LOG
#The ; in the next line is because the line is commented by default on RHEL5
sed -i "s/;error_log = .*/error_log = ${ERROR_LOG}/" /etc/php.ini

请注意,我还更改了第一个变量和相关的sed命令,因此它与另一个变量并行.

我假设你得到的错误信息是“unterminated`s”命令.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读