[TOC]
# 介绍
php的各种命令php,php-config,php-fpm,phpize都被安装在/usr/bin/目录下:
~~~
/usr/bin/php -i
/usr/bin/php -m
/usr/bin/php-fpm
/usr/bin/phpize
~~~
默认运行不带php.ini也是可以运行的,但是,我们还是需要它。 拷贝一份到/etc/php.ini
~~~
sudo cp /etc/php.ini.default /etc/php.ini
sudo chmod 777 php.ini #777权限
~~~
这样php的配置文件就是`/etc/php.ini`
# php-fpm的使用
默认是没有配置文件的,我们复制一份:
~~~
sudo cp /etc/php-fpm.conf.default php-fpm.conf
sudo chmod 777 php-fpm.conf #777权限
~~~
然后配置一下这个配置文件,修改错误日志文件和pid的目录
~~~
sudo vi /etc/php-fpm.conf #sudo
error_log = /usr/local/var/log/php-fpm.log
pid = /usr/local/var/run/php-fpm.pid
~~~
## php-fpm 启动:
~~~
php-fpm
~~~
## php-fpm 关闭:
~~~
kill -INT `cat /usr/local/var/run/php-fpm.pid`
~~~
php-fpm 重启:
~~~
kill -USR2 `cat /usr/local/var/run/php-fpm.pid`
~~~
# 主要
一个神奇的命令诞生了,一句命令就可以安装好PHP制定的版本,最关键是它几乎安装好了所有的PHP扩展,什么Redis,memcache啊都全部安装好了。而且不会覆盖你的Mac上的已经安装好的PHP。
就是这个网站:http://php-osx.liip.ch/
我想安装PHP5.6。所以,用下面一条命令就可以搞定PHP5.6:
~~~
curl -s http://php-osx.liip.ch/install.sh | bash -s 5.6
~~~
这条命令执行后,会让你输入你的Mac密码,因为它需要安装各种扩展命令,输入完密码后,就静静的等吧,我好像等了一分钟吧,还是蛮快的,就安装好了。
它把PHP安装到了/usr/local/php5目录下,是一个单独的目录,所以,不会影响到原先的PHP,这2个版本是共存的。完全不会影响到目前的PHP版本。
这个时候,你在终端中输入php -v显示的还是老的版本,如果你想用新的版本的php。可以这样/usr/local/php5/bin/php -v,这样很麻烦,可以将这个新的PHP路径追加到$path中。
~~~
vi ~/.profile
~~~
//有就编辑,没有就新建一个这个文件名。
~~~
export PATH=/usr/local/php5/bin:/usr/local/php5/sbin:$PATH
~~~
~~~
//清除下缓存,使得它生效
source ~/.profile //bashrc是其他注意
~~~
这样,就将新版本的php命令和php-fpm命令都追加到$PATH中,就可以在全局使用了。
它的php.ini在/usr/local/php5/lib/php.ini。然后,扩展的一些配置都在/usr/local/php5/php.d/目录下,这样就清楚很多
按照官网上的一些说明,最后的一个文件99-liip-developer.ini,当我们需要修改一些配置的时候,我们只需要修改这个文件就可以了,不需要去动php.ini,写入这个文件,它会覆盖php.ini里的一些配置项。
比如,我需要改正时区:
~~~
vi 99-liip-developer.ini
date.timezone = Asia/Shanghai
~~~
就可以了。
如果,要启动新的php-fpm,就将老的进程杀掉,然后再运行新的版本命令:
~~~
sudo php-fpm
[21-Jul-2015 23:07:30] ERROR: failed to open configuration file '/usr/local/php5/etc/php-fpm.conf': No such file or directory (2)
[21-Jul-2015 23:07:30] ERROR: failed to load configuration file '/usr/local/php5/etc/php-fpm.conf'
[21-Jul-2015 23:07:30] ERROR: FPM initialization failed
~~~
会报错,说找不到php-fpm.conf。它默认去/usr/local/php5/etc/目录下去找了,由于,我之前已经有了一个在/etc/php-fpm.conf。所以,我直接用这个配置好了:
~~~
sudo php-fpm -y /etc/php-fpm.conf
~~~
配置xdebug
看这个http://blog.csdn.net/think2me/article/details/45344489
- 云主机和vps的区别
- Mac上的开发工具汇总
- brew
- openssl
- php
- apache
- 窗口快捷键
- 允许任何来源
- nginx
- sublime
- shadowsocks
- beyond compare
- 开机自启
- 环境变量
- iterm2
- 改变 Launchpad
- Mac小技巧
- Mac安装 GNU 软件包
- Mac断网
- 关闭isp保护机制
- charles
- redisdesktop
- vnc连接windows
- say
- go2shell
- zsh
- 创建加密文件夹
- u盘格式化为ext4
- sequalpro
- kernel_task过高
- 录屏添加声音
- 一些软件的安装和使用
- java
- vagrant
- 多机器创建
- supervisor
- ubuntu配置https证书
- rinetd端口映射转发
- 安装中文man
- frp内网穿透
- 树莓派
- windows烧写系统
- 如何让树莓派支持中文
- 装系统完全指南
- 使用raspi-config配置树莓派
- 换源
- frp 随时随地访问自己的树莓派
- 安装php和swoole
- 安装docker
- 安装mysql和redis
- 音响配置
- 文字转语音
- 通过usb声卡录音和播放
- 视频监控
- ssh安装
- 安装ss
- 安装teamview
- 安装TensorFlow
- 挂载U盘
- sd卡拷贝
- 备份系统
- 终端翻墙
- jenkins
- jumpserver
- inotify+rsync
- lnmp一键安装包
- markdown自动生成导航栏
- dnsmasq
- 服务器之间文件同步
- samba
- cmder
- notepad++去除BOM
- wireshark
- proxifier
- fish
- chocolatey
- AutoHotkey
- 远程唤醒
- win10子系统和卓越性能
- win10创建计划任务
- 谷歌云免费一年
- windows优化
- windows开机关机脚本
- aliyun DDNS
- BestTrace
- wireguard
- PAC
- telegram
- google voice
- bbr,锐速
- aliyun和tencent云卸载监控
- 通过微博图片的链接找到发图的人
- Socat端口转发
- iso制作
- win10关闭自动更新
- youtube-dl
- vscode
- docker
- 简介
- 网络
- 常用命令
- 命令细解释
- docker架构
- centos安装
- dockerfile
- 使用
- copy
- ADD
- 详解
- 多阶段构建
- docker swarm
- routing mesh
- 清理Docker占用的磁盘空间
- 网络命名空间
- ETCD
- 简介
- 部署集群
- 网络层实现
- docker machine
- 发布
- docker compose
- kubernetes
- 简介
- pod
- services
- 详解
- 日志
- 手写docker
- 基础技术
- namespace
- cgroups
- 简介
- 常用命令
- scp
- rpm
- sftp
- vim
- find
- more分屏显示
- ln
- grep
- init
- nohup
- htop
- top
- w
- ssh
- firewalld
- sudo
- lrzsz
- lsof
- systemctl
- rsync
- screen
- tar打包
- ss
- history
- vmstat
- 基础知识
- 目录
- 权限
- 用户和组
- 防火墙
- crontab
- ps 进程
- 开机自启
- 信号
- 一些资料
- 同步/异步,阻塞/非阻塞区别
- 添加swap
- 查看硬件资源信息
- 文本相关
- zabbix监控
- sql
- 数字签名
- 虚拟内存
- rsyslog
- tcp优化
- 避免rm
- ulimit
- rc.local开机自启
- 文件时间戳
- 文本处理工具
- nginx
- 优点
- 安装
- 配置文件
- 常用命令
- nginx模块
- stub_status模块
- random_index
- sub_module
- secure_link_module模块
- geoip_module
- 请求限制
- 访问控制
- 静态资源web服务
- 防盗链
- 代理服务
- 负载均衡
- 缓存服务
- 动静分离
- rewrite规则
- HTTPS
- nginx+lua
- 常见异常
- 配置文件详解
- keepalived
- keepalived服务说明
- keepalived部署
- 脑裂
- 多实例配置
- 提高安全性的配置
- 日志配置
- SO_REUSEPORT
- 网络管理
- ISO/OSI七层模型
- TCP/IP四层模型
- DNS
- 网页加载慢
- 网关
- IP配置
- NGINX + SSH Tunnel 内网穿透
- 测速
- 防御DDOS
- 屏蔽指定国家所有的IP
- 一键安装桌面环境和RDP
- vps dd win
- iftop监控服务器
- Debian/Ubuntu上使用rclone挂载OneDrive网盘
- 基于serverchan微信推送
- vps dd linux
- ssh端口转发
- ssh设置代理
- lvs
- 服务管理
- 服务分类
- 服务与端口
- RPM包服务管理
- 源码包服务管理
- 总结
- yum
- apt
- Linux VPS一键更换软件源脚本
- pgsql安装
- shell
- shell简介
- echo命令
- 基础
- 运算符
- 环境变量
- 正则表达式
- cut命令
- printf
- 分析服务器日志
- sed和awk
- 流程控制
- 函数
- 批处理
- wc
- sort和uniq
- git
- 配置
- git四个区五种状态
- git常用命令
- 仓库管理
- 分支管理
- 查看管理
- 操作管理
- 恢复管理
- 其他命令
- 总结
- git fetch & git pull
- 各种后悔药
- 储藏
- 标签管理
- 常见问题
- 删除大文件
- 设置缓冲区大小
- fork别人的项目
- git rebase 命令的原理和缺陷
- 改写提交
- git 仓库的子目录独立成新仓库
- git高级用法
- 回滚 reset
- emoji
- git二分法
- stash
- 删除Git记录中的大文件的过程
- git reflog
- 恢复已删除分支
- reset和revert
- git同时push代码到github、码云等多个平台
- .git秘密
- commit,tree,blob关系
- 暂存区的作用
- git diff
- 安全
- 系统扫描
- 无痕后门Redsails
- iptables
- openresty
- 常用架构
- lua
- twemproxy+redis
- 智能DNS
- bind服务安装
- DNS解析记录分类
- bind配置演示
- postman
- zookeeper
- zookeeper简介
- 集群部署
- 核心工作机制
- zookeeper命令行操作
- zookeeper客户端API
- 感知服务器动态上下线
- 分布式共享锁
- 原理
- FastDFS
- 简介
- 家里的电脑,外界访问
- centos7和centos6的变化
- centos7显示中文
- .user.ini
- 设置cookie
- ipv6
- L2TP
- linux性能优化
- socket优化