使用mac上自带的apache,php
apache的配置文件路径
/etc/apache2
启动,停止重启apache
sudo apachectl start
sudo apachectl stop
sudo apachectl restart
当使用上面命令出现报错
sudo /usr/sbin/apachectl start
sudo /usr/sbin/apachectl restart
修改默认端口
默认访问路径
/Library/WebServer/Documents
配置php
mac也自带了php,通过如下命令将下方文件注释内容去掉即可,之后退出保存,启动apache
sudo vim /etc/apache2/httpd.conf
自带的版本稍微低了一点,我们使用下面的命令升级一下php版本到7.3
brew install php@7.3
下好了以后我们按照上面提示设置一下
编辑.zshrc文件增加,之后source ~/.zshrc
重启一下
export LDFLAGS="-L/usr/local/opt/libpq/lib"
export CPPFLAGS="-I/usr/local/opt/libpq/include"
export PKG_CONFIG_PATH="/usr/local/opt/libpq/lib/pkgconfig"
apache中使用php7的话,在http.conf文件中加入以下代码,把libphp5.so的那句注释掉,php5.conf文件内将php5的代码块也替换掉
LoadModule php7_module /usr/local/opt/php/lib/httpd/modules/libphp7.so
<IfModule php7_module>
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
</IfModule>
之后打开新终端php --version即可查看到php更新成功
mysql
sudo /usr/local/mysql/support-files/mysql.server start 启动mysql服务 sudo /usr/local/mysql/support-files/mysql.server stop 停止mysql服务
mac上没有mysql,下载地址如下,选择dmg镜像文件下载
或者
brew install mysql@5.7
mysql装好以后的系统偏好增加了一个图标
点击进入我们启动mysql
关于mysql忘记初始密码
使用mysql --version
命令,若出现command not found:mysql
,则需要如下操作,在关闭mysql服务,之后安全模式启动mysql
cd /usr/local/bin/
sudo ln -fs /usr/local/mysql/bin/mysql mysql
安全模式启动mysql
sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables
如下启动成功之后,在重新启动一个终端,输入命令Mysql -u root
,此时不需要在输入密码,即可进入mysql
之后我们修改新密码
FLUSH PRIVILEGES;
SET PASSWORD FOR root@'localhost' = PASSWORD('777777');
FLUSH PRIVILEGES;
修改完成以后退出安全模式,我们重新启动mysql,使用命令mysql -u 'root' -p
,之后我们就可以通过密码登录啦
权限相关
mac下改某些文件下的内容不是太方便,于是可以将当前文件夹的权限修改一下,使用如下命令(如修改/Library/WebServer/Documents文件夹下的权限),
chmod 777 /Library/WebServer/Documents
常见的linux权限
-rw------- (600) 只有拥有者有读写权限。
-rw-r--r-- (644) 只有拥有者有读写权限;而属组用户和其他用户只有读权限。
-rwx------ (700) 只有拥有者有读、写、执行权限。
-rwxr-xr-x (755) 拥有者有读、写、执行权限;而属组用户和其他用户只有读、执行权限。
-rwx--x--x (711) 拥有者有读、写、执行权限;而属组用户和其他用户只有执行权限。
-rw-rw-rw- (666) 所有用户都有文件读、写权限。
-rwxrwxrwx (777) 所有用户都有读、写、执行权限。
修改完成之后通过ls -l
查看权限是否修改成功
方便进入目录
修改完成以后,为了方便进入当前目录,我们把当前路径添加址至边栏
- 数据库连接字符串的处理方法!加密解密连接字符串。
- ASP.net实现无扩展名的URL重写。简单、方便、无需ISAPI。
- 通过自定义ServiceHost实现对WCF的扩展[实例篇]
- 通过自定义ServiceHost实现对WCF的扩展[原理篇]
- python使用rsa库做公钥解密(网上别处找不到)
- 通过“四大行为”对WCF的扩展[原理篇]
- WCF客户端运行时架构体系详解[下篇]
- WCF客户端运行时架构体系详解[上篇]
- WCF服务端运行时架构体系详解[续篇]
- [WCF-Discovery] 实例演示:如何利用服务发现机制实现服务的“动态”调用?
- [WCF-Discovery]服务如何能被”发现”
- 我的数据访问函数库的源代码(一)—— 共用部分
- 《WCF服务编程》关于“队列服务”一个值得商榷的地方
- 我的数据访问函数库的源代码(二)—— SQL语句部分
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Spring-IOC-创建Bean-属性填充
- vi与vim如何修改tab为4个空格方法示例
- Linux使用Crontab定时访问某个路由地址的方法
- jmeter 在linux服务器的安装和运行教程图解
- Linux中改变文件权限的chmod命令详析
- Ubuntu常用指令及用法详解
- Linux 系统使用私钥登录的教程详解
- Ubuntu如何轻松编译openJDK详解
- 详解Linux下Tomcat开启查看GC信息
- Centos7.4 zabbix3.4.7源码安装的方法步骤
- CentOS7环境搭建python3以及与python2实现共存的方法
- centos7.0安装离线JDK1.8方法详解
- ubuntu中swap(虚拟内存)设置方法
- 详解Linux监控重要进程的实现方法
- CentOS环境下安装Redis3.0及phpredis扩展测试示例