php 程序员 命令行指南 持续总结更新 mac

向 host 文件快速添加新网址配置

echo "127.0.0.1 your.domian.com" | sudo tee -a /etc/hosts

NGINX 配置

#nginx禁止访问.点号开头的文件
location ~* /.* {
deny all;
}
#nginx 禁止访问.svn .git 的文件
location ~ ^(.*)/\.(svn|git)/ {
    deny all;
}

在 git配置里面单独给 github.com使用ss socks5代理

电脑安装好 ss,默认本地 socks5代理端口是1086
#打开 git 配置文件
vim ~/.gitconfig
#追加配置:
[http "https://github.com"]
       proxy = socks5://127.0.0.1:1086
[https "https://github.com"]
       proxy = socks5://127.0.0.1:1086
#保存文件,重新打开终端

git 提交新项目到远程仓库

# 项目目录执行git初始化
git init
git add .
git commit -m "项目开始"
git remote add origin [email protected]:xxx/xxx.git
git push -u origin master

做手机网页 怎么真机调试

chrome 的模拟手机和真实的手机浏览器效果差距好大的,怎么用手机浏览器测试呢
本地电脑搭建nginx服务器,配置到一个域名
解析一个测试用的域名到电脑的局域网 ip,
手机和电脑在同一个局域网,手机输入域名就能访问电脑的网页了

brew太慢怎么办? brew 如何连接 ss

命令行终端使用 ss 代理 加快连接海外连接速度

终端内执行以下命令,只对当前窗口有效,端口在ss 软件的设置里面查看
export http_proxy=socks5://127.0.0.1:1086
export https_proxy=socks5://127.0.0.1:1086

在Linux 中 用 Kill -2 和 Kill -9 都能够结束进程,他们之间的区别为:

Kill -2 :功能类似于Ctrl + C 是程序在结束之前,能够保存相关数据,然后再退出。

Kill -9 :直接强制结束程序。
在用nohup挂起程序时,当想要结束这个程序,最好用kill -2 。能够模拟在控制台结束程序的功能。

环境变量的位置

环境变量 如果是zshshell 那么 在~/.zshrc
如果是bash shell 那么在 ~/.bash_profile

终端使用ss代理,配置代理 http,https分别配置

临时的就在终端执行一次命令,永久的就在配置文件~/.zshrc添加,有 socks5 代理和 http 代理,自己选择
export http_proxy=socks5://127.0.0.1:1086
export https_proxy=socks5://127.0.0.1:1086

配置远程服务器秘钥登录,把本地秘钥发送到远程服务器

ssh-copy-id root@ip

LNMP

注意

电脑如果存在多个 php 版本,终端执行 php 和 nginx 加载的 php 可能不是一个版本

查看加载的 ini

php -i | grep php.ini

开启 php-fpm

sudo php-fpm -D

启动 nginx

sudo nginx
sudo nginx -s reload

启动 mysql

mysql.server start

启动 redis

redis-server &

启动 memcached

/usr/local/bin/memcached -d

本地搜索 php.ini配置

find /usr/local -name php.ini

本地搜索 php-fpm.conf配置

find /usr/local -name php-fpm.conf

nginx 进程查看

ps -ef|grep nginx

nginx 重载配置

sudo nginx -s reload

nginx 停止

sudo nginx -s stop

查看80端口占用情况

lsof -i tcp:80

查看 nginx 进程

ps aux | grep nginx

brew

官网 brew.sh

已安装列表

brew list

更新某个软件

brew upgrade xxx

移除旧版本软件资源

brew cleanup

查看 php 相关的可下载的资源

brew search php

安装 php7.2

brew install [email protected]
brew install [email protected]
brew install nginx

PHP版本 信息

php -v

php 扩展

php -m

php ini 目录

/usr/local/etc/php/7.2/
/usr/local/etc/php/7.1/php.ini
/usr/local/etc/php/7.1/php-fpm/www.conf

php 命令,环境变量

echo 'export PATH="/usr/local/opt/[email protected]/bin:$PATH"' >> ~/.bash_profile
echo 'export PATH="/usr/local/opt/[email protected]/sbin:$PATH"' >> ~/.bash_profile

启动 php

brew services start [email protected]
brew services start nginx
brew services start mysql

安装 redis 扩展

brew 安装的 php 集成了 perl,
在 php 执行文件所在目录.
pecl install igbinary
pecl install redis
pecl install xdebug

是不是很方便
Build process completed successfully
Installing '/usr/local/Cellar/[email protected]/7.2.16/pecl/20170718/xdebug.so'
install ok: channel://pecl.php.net/xdebug-2.7.0
Extension xdebug enabled in php.ini

mac 多版本 php 共存,随意切换

https://learnku.com/docs/lara...
使用 laravel-valet
brew 之前安装过 php,可能会报错,解决办法

# 停止旧 php
brew services stop [email protected]
#清理brew缓存文件
brew cleanup
#升级旧php
brew upgrade [email protected]

不用valet了,想改回以前的brew 安装的环境,结果valet把我的配置改乱了

An another FPM instance seems to already listen on /valet/valet.sock

  • php-fpm 的配置监听被改了,要改回去监听 127.0.0.1:9000

php-fpm配置文件所在目录: /usr/local/etc/php/7.2/php-fpm.d/www.conf

  • nginx 也被改了

/usr/local/etc/nginx/nginx.conf
include 配置项,去掉 valet 的,加上以前的
include "/usr/local/etc/nginx/conf.d/*.conf";

服务器不能直接输入mysql密码

mysql -u root -p

然后出现输入密码提示

相关推荐