linux和mac下的nginx和php的安装
linux版本相关文档:http://www.nginx.cn/231.html
一、安装php
1、下载包,这里以php 5.3.10为例
2、执行下面shell命令
注意:下面配置的命令中第一行
./configure --prefix=/usr/local/php
表示把php安装在/usr/local/php里面去,同理,下面的nginx。
tar zvxf php-5.4.7.tar.gz
cd php-5.4.7
./configure --prefix=/usr/local/php --enable-fpm --with-mcrypt
--enable-mbstring --disable-pdo --with-curl --disable-debug --disable-rpath
--enable-inline-optimization --with-bz2 --with-zlib --enable-sockets
--enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex
--with-mhash --enable-zip --with-pcre-regex --with-mysql --with-mysqli
--with-gd --with-jpeg-dir
make all install
3、其中,./configure的时候有可能会报错,不过一般都是依赖的文件缺少,所以需要sudo apt-get install xxx就行了。
configure报错1:xml2-config not found
解决:需要安装libxml2,如果已经安装了还是报错,则需要安装它所依赖的,sudo apt-get install libxml2*
configure报错2:mcrypt.h not found
原因:这个库文件apt-get的时候一般会失败,所以要自己去下
解决:
cd /usr/local/src
wget http://softlayer.dl.sourceforge.net/sourceforge/mcrypt/libmcrypt-2.5.8.tar.gz//貌似这个地址不行,补一个:http://download.chinaunix.net/download.php?id=11901&ResourceID=5917
tar -zxvf libmcrypt-2.5.8.tar.gz
cd /usr/local/src/libmcrypt-2.5.8
./configure --prefix=/usr/local
make
make install
如果config成功了,大概会有这样的返回:
make报错3,make: *** [ext/dom/node.lo] Error
解决方法:
$ curl -o php-5.2.17.patch https://mail.gnome.org/archives/xml/2012-August/txtbgxGXAvz4N.txt //记得修改为自己的php版本
$ tar jxf php-5.2.17.tar.bz2
$ cd php-5.2.17
$ patch -p0 -b <../php-5.2.17.patch
make成功大概是这个鬼样子:
4、安装成功后,
php.ini文件需要从源代码目录里面拷到安装目录里面去。。
php-fpm.conf一般是在安装目录里面默认有的,在安装目录/etc/php-fpm.conf
cp php源码目录/php.ini-development /usr/local/php/lib //关于查找php.ini文件,无论LINUX还是WIN,都可以输出phpinfo(),然后在配置里面搜索查看
cp过来后,一般要重启php-fpm。
php-fpm重启命令:
sudo 安装目录/sbin/php-fpm start //
5、其他
如果想要在其他地方直接敲入php命令就能执行php的话,需要把php执行命令文件cp到系统的bin文件目录下去
操作如下:
cp /usr/local/php/bin/php /usr/bin
或者
cp /usr/local/php/bin/php /usr/sbin
二、nginx的安装
相关文档:https://www.zybuluo.com/phper/note/73025
step1、安装依赖库,zlib, pcre, openssl
cd /lamp
wget http://zlib.net/zlib-1.2.8.tar.gz
tar -zxvf zlib-1.2.7.tar.gz
cd zlib-1.2.7
./configure
make
make install
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.32.tar.gz//这个地址之前不能用,chinaunix有可以用的版本
tar -zxvf pcre-8.21.tar.gz
cd pcre-8.21
./configure
make
make install
wget http://www.openssl.org/source/openssl-1.0.2.tar.gz
tar zxvf openssl-1.0.2.tar.gz
cd openssl-1.0.2.tar.gz
./config # 注意是config,不是configure
make
make install
step2、安装nginx
wget http://nginx.org/download/nginx-1.7.10.tar.gz
tar -zxvf nginx-1.7.10.tar.gz
cd nginx-1.7.10.tar.gz //编译
//!!!!注意这三个扩展的目录是源代码目录,不是安装目录!!!!//
./configure --prefix=/usr/local/nginx \
--sbin-path=/usr/local/nginx/nginx \
--conf-path=/usr/local/nginx/nginx.conf \
--pid-path=/usr/local/nginx/nginx.pid \
--with-http_ssl_module \
--with-pcre=/lamp/pcre-8.32 \
--with-zlib=/lamp/zlib-1.2.7 \
--with-openssl=/lamp/openssl-1.0.2 //安装
[root@localhost nginx-1.7.10.tar.gz] make
...
[root@localhost nginx-1.7.10.tar.gz] make install
step3、配置
!!!!!!!!!!!!!!!nginx的默认安装目录在/usr/local/nginx!!!!!!!!!!!
启动nginx
/usr/local/nginx/nginx
重启nginx
/usr/local/nginx/nginx -s reload
配置文件目录:
vi /usr/local/nginx/nginx/nginx.conf
注意:此时访问localhost/index.html一般就可以访问nginx了
三、配置nginx以支持php
step:1、修改nginx.conf
location / {
root /usr/local/www; #web的根目录
index index.php index.html index.htm; # 加入index.php
} location ~ \.php$ {
root /usr/local/www; #web的根目录 //这个自己去建一个文件夹放项目
fastcgi_pass 127.0.0.1:9000; #php-fpm的地址
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; //这个很重要,不然安装完后,访问php会显示空白页,也不报错。
include fastcgi.conf;
}
step2、测试
在上面的web目录新建个文件测试
sudo vi /usr/local/www/index.php;
index.php随便写点啥,访问localhost/index.php就行了。注意要开启nginx和php-fpm,再说一遍命令:
sudo /usr/local/nginx/nginx sudo /usr/local/php/sbin/php-fpm start (有些版本不需要start)
到此,php和nginx的配置已经完成了,下面是其他的配置
四、开机自启动nginx
开机启动配置文件:/etc/rc.local , 在该文件加入以下命令,注意sudo。
/usr/local/nginx/nginx
关于MAC版本,直接使用brew命令安装,简单粗暴
mac版本相关文档:https://segmentfault.com/a/1190000002963355
php安装过程中如果报错找不到zlib,可以先用brew安装zlib如果不行,在安装xcode-select --install
php安装成功后会有如下介绍:
其中如果想在命令行中切换各种Php版本,添加如下代码,而不是上图所示
sudo vim ~/.bash_profile
export PATH="$(brew --prefix php54)/bin:$PATH" source ~/.bash_profile
linux和mac下的nginx和php的安装的更多相关文章
- 【高可用HA】Nginx (1) —— Mac下配置Nginx Http负载均衡(Load Balancer)之101实例
[高可用HA]Nginx (1) -- Mac下配置Nginx Http负载均衡(Load Balancer)之101实例 nginx版本: nginx-1.9.8 参考来源: nginx.org [ ...
- npm在linux即mac下更新时报错
nam在linux即mac下需要更新到新版本:
- Mac下sublime text 的“package control”安装
小伙伴们好,我根据昨晚的经历写一个小总结:关于“Mac下sublime text 的“package control”安装”.本来安装package control是一个无比简单的事情,即使是初次使用 ...
- mac下配置nginx
nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器,下面我们来了解下nginx的用法. 安装nginx 使用brew安装nginx brew install ...
- Linux(CentOS)系统下设置nginx开机自启动
Nginx 是一个很强大的高性能Web和反向代理服务器.下面介绍在linux下安装后,如何设置开机自启动.首先,在linux系统的/etc/init.d/目录下创建nginx文件,使用如下命令:vi ...
- [nginx]Windows和Mac下,nginx反向代理服务器配置
最近做项目,前端需要用到nginx反向代理来转发请求,总结了一下在Windows和Mac上的配置,以备查询. 一.Windows 修改nginx的配置文件,nginx.conf. 1)nginx.co ...
- Mac下配置Nginx负载均衡
1.首先在Mac下安装Nginx(可参考我的另一篇随笔http://www.cnblogs.com/malcolmfeng/p/6896703.html). 2.安装Tomcat,下载后,解压,bin ...
- Linux,Mac下MySQL的安装及一些知识点的整理
Linux下载安装 在服务器上下载的话,需要安装Mysql5.7相关的yum源 wget https://dev.mysql.com/get/mysql80-community-release-el7 ...
- Linux单机环境下HDFS伪分布式集群安装操作步骤v1.0
公司平台的分布式文件系统基于Hadoop HDFS技术构建,为开发人员学习及后续项目中Hadoop HDFS相关操作提供技术参考特编写此文档.本文档描述了Linux单机环境下Hadoop HDFS伪分 ...
随机推荐
- 装饰模式(Decorator pattern)
装饰模式(Decorator pattern): 又名包装模式(Wrapper pattern), 它以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案. 装饰模式以对客户透明的方式动态的给 ...
- rabbitMQ学习(一)
一般模式 服务端: import com.rabbitmq.client.Channel; import com.rabbitmq.client.Connection; import com.rabb ...
- Linux和windows之间通过scp复制文件
Windows是不支持ssh协议的 需要安装WinSSHD 安装以及设置过程如下: BvSshServer(原名winsshd)官方下载页在这里:https://www.bitvise.com/dow ...
- RabbitMQ 入门指南(Java)
RabbitMQ是一个受欢迎的消息代理,通常用于应用程序之间或者程序的不同组件之间通过消息来进行集成.本文简单介绍了如何使用 RabbitMQ,假定你已经配置好了rabbitmq服务器. Rabbit ...
- hadoop环境搭建
osubtu16.04(单机模式),存储空间25G,内存2G密码那啥(!!) 1:任务清单 参考书籍,(hadoop3权威指南) (环境(系统macos12,java18101 ,hadoop173, ...
- [c#]一个窗体调用另一个窗体的事件
StuAddForm a = new StuAddForm(); a.IfStudent(textBox1.Text.Trim()):
- lamp 安装 apache php
http://www.cnblogs.com/CheeseZH/p/4694135.html
- bootstrap--小李子demo
最近忙啊...看到各位冬鞋都在认真写博客,认真敲代码,认真工作,总觉得自己时间太少,总觉得时间不够,老了...... 进正题: 上次不知从哪里(忘了)下载了bootstrap的一些使用小demo,以后 ...
- php基础上
建立站点 localhost /文件 www目录下 不能放 中文目录 php 支持的数据类型 int 整数 float 小数 string 字符 bool 布尔型 date 时间 ...
- 史航416第九次作业&总结
一.知识点总结: 1.二维数组定义的形式:类型名 数组名[行长度] [列长度] 例如:int a[3][2]:定义一个二维数组a,3行2列,6个元素: 2.二维数组引用的形式:类型名 数组名[行下标] ...