php 自动部署

php.ini exec 函数需要打开,才能自动部署(开启php exce函数 https://www.php.cn/php-weizijiaocheng-202741.html)

 # 让文件可以编辑
	 chmod  +w  /etc/sudoers
 # 编辑文件
 	vim /etc/sudoers
 # www 代表linux 中的用户
	 www ALL=(root) NOPASSWD: /usr/bin/git
 # 让文件只读
	 chmod -w  /etc/sudoers
<?php
exec('cd ' . dirname(__FILE__) . '&&sudo git pull 2>&1', $res, $rc);
if ($rc == 0) {
	echo '部署成功<br>';
} else {
	echo '部署失败<br>';
}
echo '<pre>';
var_dump($res);
echo '</pre>';

echo '提交记录:<pre>';
exec('cd ' . dirname(__FILE__) . '&&sudo git log -5 2>&1', $res1, $rc);
var_dump($res1);
echo '</pre>';

?>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是使用Ansible自动部署WordPress的步骤: 1.安装Ansible 2.创建Ansible inventory文件,指定需要部署WordPress的服务器IP地址 3.创建Ansible playbook文件,包含以下任务: - 安装Apache、PHP、MySQL等必要的软件 - 下载WordPress并解压到指定目录 - 配置WordPress数据库连接信息 - 配置Apache虚拟主机 - 启动Apache和MySQL服务 4.运行Ansible playbook文件,执行自动化部署任务 下面是一个简单的Ansible playbook文件示例,用于自动部署WordPress: ```yaml --- - name: Deploy WordPress hosts: webserver become: true vars: http_port: 80 mysql_root_password: your_password_here db_name: wordpress db_user: wordpress db_password: your_password_here wp_dir: /var/www/html/wordpress tasks: - name: Install Apache, PHP, MySQL apt: name: "{{ item }}" state: present with_items: - apache2 - php - php-mysql - mysql-server - libapache2-mod-php - name: Download WordPress get_url: url: "https://wordpress.org/latest.tar.gz" dest: /tmp/wordpress.tar.gz - name: Extract WordPress unarchive: src: /tmp/wordpress.tar.gz dest: "{{ wp_dir }}" remote_src: yes - name: Configure WordPress database mysql_db: name: "{{ db_name }}" state: present login_user: root login_password: "{{ mysql_root_password }}" - name: Create WordPress database user mysql_user: name: "{{ db_user }}" password: "{{ db_password }}" priv: "{{ db_name }}.*:ALL" state: present login_user: root login_password: "{{ mysql_root_password }}" - name: Configure Apache virtual host template: src: templates/wordpress.conf.j2 dest: /etc/apache2/sites-available/wordpress.conf notify: - Reload Apache - name: Enable Apache virtual host apache2_module: state: present name: rewrite notify: - Reload Apache - name: Disable default Apache site apache2_module: state: absent name: autoindex notify: - Reload Apache - name: Enable WordPress Apache site apache2_site: state: present name: wordpress notify: - Reload Apache handlers: - name: Reload Apache service: name: apache2 state: reloaded ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值