600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > 在Mac OS上编译安装Nginx+PHP+MariaDB开发环境的教程【PHP】

在Mac OS上编译安装Nginx+PHP+MariaDB开发环境的教程【PHP】

时间:2021-03-14 06:16:11

相关推荐

在Mac OS上编译安装Nginx+PHP+MariaDB开发环境的教程【PHP】

后端开发|php教程

Mac,Nginx,PHP,MariaDB

后端开发-php教程

因为甲骨文的尿性。mariadb应该要顶替mysql了。所以抛弃mysql

模糊查找系统源码,ubuntu命令无反应,简单pycharm爬虫案例,js php通讯,简阳网站seolzw

1,编译nginx

分别下载nginx,openssl,pcre

编译openssl的时候会提示

云计调 v7 源码,vscode写爬虫,ubuntu qtsdk,tomcat技术详解,sqlite3 帮助文档,帝国视频播放插件,主流前端框架是什么意思,地板上有爬虫怎么治好,php 上传文件类型,seo 要素有哪些,网站后台文章字体,网页内容监控 源代码,web认证系统页面模板下载地址lzw

WARNING! If you wish to build 64-bit library, then you have toinvoke ‘./Configure darwin64-x86_64-cc *manually*.

安卓登陆注册源码,动态背景vscode,ubuntu退格,tomcat线程上限,sqlite自增主键_id,js谷歌音频播放器插件,不需要编译的前端框架,黑色的爬虫有很多脚,手机app php,瓷砖seo优化服务,网站模板第一,网页云系统源码,wordpress安装的模板文件lzw

如果你不停止编译就会出错。这个问题应该是 openssl/config脚本猜对你的系统是64位,但是 会根据$KERNEL_BITS来判断是否开启x86_64编译,默认 是不开启的(很奇怪的设置,虽然会给你5秒时间停止编译并手动开启),所以你生成的openssl库文件是32位的,最后静态链接到nginx会出错。目前看来没有很好的方法把x86_64的参数传到openssl配置文件中 (openssl/config 猜测os架构,设置编译的参数是32位还是64位,默认是32位,然后调用openssl/Configure生成Makefile)

可以在configure之前export KERNEL_BITS=64,如果还是不起作用

就要手到修改了

进入nginx目录

$ ./configure ./configure –prefix=/usr/locale/nginx –with-openssl=../openssl-1.0.1i –with-pcre=../pcre-8.33

手动修改 objs/Makefile:

./config –prefix=/Users/xxx/Downloads/openssl-1.0.1e/.openssl no-shared no-threads

改成

./Configure darwin64-x86_64-cc –prefix=/Users/xxx/Downloads/openssl-1.0.1e/.openssl no-shared no-threads

再make

2,编译php

下载php源码和一些类库

zlib:/

GD库:/libgd/gd-libgd/downloads/libgd-2.1.0.tar.gz 不好下

freetype:/projects/freetype/

libpng:/pub/png/libpng.html

libjpeg:/

curl: http://curl.haxx.se/download.html

mhash: /projects/mhash/

mcrypt: http://mcrypt.hellug.gr/

还有bzip2。 gettext 和libtool 在gnu官网,不过速度不行,其他的库我用了系统自带。懒得再折腾,到时候没啥补啥。

除了libtool直接扔在了/usr,其他我都装在了/usr/local的一个个单独目录里面。比如jpeg就是/usr/local/jpeg方便以后修改

./configure –prefix=/Users/saint/bin/php –enable-inline-optimization –enable-fpm –with-mcrypt=/usr/local/libmcrypt –with-zlib –enable-mbstring –with-openssl –with-mysql –with-mysqli –with-mysql-sock –with-gd –with-jpeg-dir=/usr/local/jpeg –enable-gd-native-ttf –enable-pdo –with-gettext –with-curl –with-pdo-mysql –enable-sockets –enable-bcmath –enable-xml –with-bz2=/usr –enable-zip –enable-freetype –with-png-dir=/usr/local/libpng –with-pcre-regex –with-iconv-dir=/usr –with-gettext=/usr/local/gettext

3.编译mariadb

编译mariabd需要先安装cmake。去下载安装tar zxf mariadb-5.5.32.tar.gz

cd mariadb-5.5.32cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mariadb \

-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \-DMYSQL_DATADIR=/data/mariadb \-DSYSCONFDIR=/usr/local/mariadb \-DMYSQL_USER=mysql \-DMYSQL_TCP_PORT=3306 \-DWITH_XTRADB_STORAGE_ENGINE=1 \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_PARTITION_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_MYISAM_STORAGE_ENGINE=1 \-DWITH_READLINE=1 \-DENABLED_LOCAL_INFILE=1 \-DWITH_EXTRA_CHARSETS=1 \-DDEFAULT_CHARSET=utf8 \-DDEFAULT_COLLATION=utf8_general_ci \-DEXTRA_CHARSETS=all \-DWITH_BIG_TABLES=1 \-DWITH_DEBUG=0

make && make install/bin/cp support-files/my-f /usr/local/mariadb/my.confcp support-files/mysql.server /usr/local/mariadb/mysqld# my.cf

cat > /etc/f <> /etc/profile

source /etc/profile

/usr/local/mariadb/bin/mysql -e “grant all privileges on *.* to root@127.0.0.1′ identified by “dbrootpwd” with grant option;”/usr/local/mariadb/bin/mysql -e “grant all privileges on *.* to root@localhost identified by “dbrootpwd” with grant option;”/usr/local/mariadb/bin/mysql -uroot -pdbrootpwd -e “delete from mysql.user where Password=”;”/usr/local/mariadb/bin/mysql -uroot -pdbrootpwd -e “delete from mysql.db where User=”;”/usr/local/mariadb/bin/mysql -uroot -pdbrootpwd -e “drop database test;”

4.后续安装扩展

php提供了一个phpize工具供我们安装需要的扩展。

下面介绍phpize的使用:

(1).找到自己原来编译的php安装目录,例如我的目录是/home/saint/Development/php,在该目录下,找到bin/phpize。如果没有这个工具,则说明没有安装该工具,那么需要安装php.dev,一般都会有这个工具。

(2).要扩展的话,就需要有一个和当前已安装的php的版本一样的php的源包,当前php版本可以用过phpinfo()查看。

(3).打开源包目录,进入到ext目录,例如我就进入到:/home/saint/Development/php-5.5.6/ext下,ext下有各个php带有的扩展模块,进入到ext/sockets中。

(4).cd到ext/sockets后,运行phpize程序:

/home/saint/Development/php/bin/phpize

执行后,可以看到phpize会帮我们生成了对应的configure文件

(5).通过configure来配置,执行下面的命令:

./configure --enable-sockets --with-php-config=/home/saint/Development/php/bin/php-config make make install

注: php-config文件与phpize是同一个目录下的

(6).更改php.ini,增加下面的语句:

extension=”/home/saint/Development/php/lib/php/extensions/no-debug-non-zts-1226/sockets.so”

觉得难看可以将那个日期文件夹删除

(7).重启Nginx

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。