亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MAC怎么使用php7搭建LNMP環境

發布時間:2021-06-11 09:45:04 來源:億速云 閱讀:180 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關MAC怎么使用php7搭建LNMP環境的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

mysql">1、安裝MySQL:

查看MySQL可用版本信息:

brew info mysql

我這邊看到的版本是5.7.10:

mysql: stable 5.7.10 (bottled)

接下來安裝MySQL5.7.10:

brew install mysql

安裝完成之后按照提示將plist文件放入~/Library/LaunchAgents/中并load,設定MySQL開機啟動:

ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents

啟動MySQL:

mysql.server start

啟動之后由于MySQL默認沒有設置密碼,所以要設置root的密碼:

mysql -uroot -p

提示輸入密碼的時候直接按回車就登錄了,登錄MySQL后提示如下:

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.10 Homebrew

接下來設置root的密碼:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';

設置密碼的時候最好設置一個強密碼,關于強密碼的規則,官方有如下說明:

Note
MySQL's validate_password plugin is installed by default. This will require that passwords contain at least one upper case letter, one lower case letter, one digit, and one special character, and that the total password length is at least 8 characters.

為了方便使用,我們經常會創建任意連接的root用戶:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'MyNewPass4!' WITH GRANT OPTION;

刷新權限使命令生效:

flush privileges;

退出MySQL:exit;PHP 7.1.0-dev (cli) (built: Feb  4 2016 09:02:09) ( ZTS DEBUG ) Copyright (c) 1997-2016 The PHP Group Zend Engine v3.1.0-dev, Copyright (c) 1998-2016 Zend Technologies    with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies復制mysql配置文件:

sudo cp /usr/local/Cellar/mysql/5.7.10/support-files/my-default.cnf /etc/my.cnf

在/etc/my.cnf 中的[mysqld]后添加lower_case_table_names=1,重啟MYSQL服務,這時已設置成功:不區分表名的大小寫;

PS.lower_case_table_names參數詳解: 0:區分大小寫,1:不區分大小寫

2、安裝php7:

①、下載php7:

mkdir ~/php7 && cd ~/php7
git clone https://git.php.net/repository/php-src.git

②、構建php7:

cd php-src
./buildconf

③、編譯php:

PS.編譯的時候如果內存1G以下請在結尾加上:--disable-fileinfo,

安裝php7時需要用安裝re2c、bison、ffmpeg、mcrypt、libiconv、gd、openssl:

安裝re2c:

brew install re2c

安裝bison(3.0.4):

brew install bison
brew switch bison 3.0.4
brew link bison --force
sudo mv /usr/bin/bison /usr/bin/bison.orig
sudo ln -s /usr/local/bin/bison /usr/bin/bison

安裝ffmpeg:

brew install ffmpeg

安裝openssl:

brew install openssl
brew link openssl --force

安裝mcrypt:

brew install mcrypt

安裝libiconv:

brew install libiconv

如果想要用openssl,剛才已經安裝了openssl,但是系統自帶了openssl,所以要用安裝的openssl替換系統自帶的openssl:

sudo ln -sf /usr/local/opt/openssl/bin/openssl /usr/bin/openssl

替換完成之后輸入openssl version就可以看到是上面用brew安裝的openssl了,因為在編譯php過程中需要openssl的header,但是安裝的時候都沒有

編譯php7:

./configure --prefix=/usr/local/php7 --exec-prefix=/usr/local/php7 --bindir=/usr/local/php7/bin --sbindir=/usr/local/php7/sbin --includedir=/usr/local/php7/include --libdir=/usr/local/php7/lib/php --mandir=/usr/local/php7/php/man --with-config-file-path=/usr/local/php7/etc --enable-bcmath --enable-calendar --enable-debug --enable-exif --enable-fileinfo --enable-filter --enable-fpm --enable-ftp --enable-gd-jis-conv --enable-gd-native-ttf --enable-hash --enable-json --enable-libxml --enable-maintainer-zts --enable-mbregex --enable-mbstring --enable-mysqlnd --enable-opcache --enable-opcache-file --enable-pcntl --enable-pdo --enable-session --enable-shared --enable-shmop --enable-simplexml --enable-soap --enable-sockets --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-wddx --enable-xml --enable-zip --with-bz2 --with-curl --with-fpm-user=www --with-fpm-group=www --with-freetype-dir=/usr --with-gd --with-gettext --with-gmp --with-iconv --with-jpeg-dir=/usr --with-mcrypt=/usr/include --with-mhash --with-mysql-sock=/var/lib/mysql/mysql.sock --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-pear --with-png-dir=/usr --with-xmlrpc --with-zlib -with-libxml-dir=/usr

如果編譯過程中提示:Cannot locate header file libintl.h,請執行如下操作:

①、安裝gettext:

brew install gettext

②、修改configure文件:

vi configure

找到如下文件:

for i in $PHP_GETTEXT /usr/local /usr ; do

替換為:

for i in $PHP_GETTEXT /usr/local /usr /usr/local/opt/gettext; do

如果提示openssl錯誤,在編譯的時候設定openssl的路徑,

--with-openssl=/usr/local/opt/openssl/

④、執行完畢之后進行編譯并安裝:

make && make install

如果嘗試很多辦法都提示ssl出錯,在編譯的時候就不要加上openssl了

⑤、安裝完成之后配置php7:

sudo ln -s /usr/local/php7/bin/php* /usr/bin/
sudo ln -s /usr/local/php7/sbin/php-fpm /usr/bin
cp php.ini-production /usr/local/php7/etc/php.ini
cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf
sudo ln -s /usr/local/php7/etc/php.ini /etc/php.ini
sudo ln -s /usr/local/php7/etc/php-fpm.conf /etc/php-fpm.conf
cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf

在安轉完成之后會有提示:

You may want to add: /usr/local/php7/lib/php/php to your php.ini include_path

接下來編輯php.ini,

vi /etc/php.ini

找到include_path,在php.ini中加入include_path:

include_path = "/usr/local/php7/lib/php/php"

查看php版本:

php -v

顯示結果如下:

PHP 7.1.0-dev (cli) (built: Feb  4 2016 09:02:09) ( ZTS DEBUG )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.1.0-dev, Copyright (c) 1998-2016 Zend Technologies

更改配置,使php7支持opcache,在安裝完成時會提示:

Installing shared extensions:     /usr/local/php7/lib/php/extensions/debug-zts-20151012/

這個路徑是擴展包路徑,將路徑復制下來,找到extension_dir并將剛才的路徑添加到php.ini中,

vi /etc/php.ini

在php.ini中加入extension_dir的配置:

extension_dir = "/usr/local/php7/lib/php/extensions/debug-zts-20151012/"

開啟opcache擴展:

在php.ini中找到opcache,加入opcache.so

sudo mkdir -p /var/log/opcache
vi /etc/php.ini

引用opcache.so:

zend_extension=opcache.so

并修改opcache的配置:

opcache.enable=1opcache.enable_cli=1opcache.file_cache="/var/log/opcache/"

現在查看php版本信息,顯示結果如下:

PHP 7.1.0-dev (cli) (built: Feb  4 2016 09:02:09) ( ZTS DEBUG )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.1.0-dev, Copyright (c) 1998-2016 Zend Technologies
    with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies

現在opcache擴展已經加入了,修改php-fpm的配置:

vi /etc/php-fpm.conf

修改配置:

pid = run/php-fpm.pid
error_log = log/php-fpm.log

啟動php-fpm:

php-fpm -D

這樣會提示兩個警告:

[04-Feb-2016 09:45:25] NOTICE: [pool www] 'user' directive is ignored when FPM is not running as root
[04-Feb-2016 09:45:25] NOTICE: [pool www] 'group' directive is ignored when FPM is not running as root

停止php-fpm的命令如下:

kill -INT `cat /usr/local/php7/var/run/php-fpm.pid`

重啟php-fpm的命令如下:

kill -USR2 `cat /usr/local/php7/var/run/php-fpm.pid`

接下來開始安裝nginx:

3、安裝nginx:

brew install nginx

安裝完成的nginx,默認的root路徑如下:

Docroot is: /usr/local/var/www

nginx的配置文件目錄如下:

/usr/local/etc/nginx/nginx.conf

nginx虛擬站點目錄如下:

nginx will load all files in /usr/local/etc/nginx/servers/.

開機啟動nginx:

ln -sfv /usr/local/opt/nginx/*.plist ~/Library/LaunchAgents

啟動nginx:

nginx

nginx監聽80端口是需要root權限的,現在nginx默認監聽的是8080端口:

sudo chown root:wheel /usr/local/Cellar/nginx/1.8.1/bin/nginx
sudo chmod u+s /usr/local/Cellar/nginx/1.8.1/bin/nginx

配置nginx,先將nginx的配置文件放至/etc下:

sudo ln -s /usr/local/etc/nginx/nginx.conf /etcsudo ln -s /usr/local/etc/nginx/servers /etc/nginxservers

修改nginx監聽端口:

sudo vi /etc/nginx.conf

修改配置文件如下:

#user  nobody;
worker_processes  4;
error_log  /usr/local/var/log/error.log;
error_log  /usr/local/var/log/error.log  notice;
error_log  /usr/local/var/log/error.log  info;
pid        /usr/local/var/run/nginx.pid;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
    access_log  /usr/local/var/log/access.log  main;
    port_in_redirect off;
    sendfile        on;
    tcp_nopush     on;
    keepalive_timeout  65;
    gzip  on;

    # HTTPS server
    #
    #server {
    #    listen       443 ssl;
    #    server_name  localhost;

    #    ssl_certificate      cert.pem;
    #    ssl_certificate_key  cert.key;

    #    ssl_session_cache    shared:SSL:1m;
    #    ssl_session_timeout  5m;

    #    ssl_ciphers  HIGH:!aNULL:!MD5;
    #    ssl_prefer_server_ciphers  on;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}
    include servers/*.conf;
}

然后在/etc/nginxservers/下創建default.conf,編輯default.conf,加入以下內容:

server {
        listen       80;
        server_name  localhost;
        #charset koi8-r;
        #access_log  logs/host.access.log  main;
        location / {
            root   html;
            index  index.html index.htm;
             # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
            location ~ \.php$ {
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_index  index.php;
                fastcgi_intercept_errors    on;
                include /usr/local/etc/nginx/fastcgi.conf;
            }
        }
        #error_page  404              /404.html;
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /\.ht {
        #    deny  all;
        #}
    }

此時,LNMP已經搭建完畢,重啟php-fpm和nginx。

感謝各位的閱讀!關于“MAC怎么使用php7搭建LNMP環境”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

杂多县| 广德县| 丹巴县| 哈巴河县| 元江| 商都县| 常州市| 上栗县| 宜昌市| 南丰县| 桂阳县| 讷河市| 密山市| 临沧市| 阳曲县| 仁布县| 濉溪县| 蒙自县| 山东| 柳州市| 财经| 丹东市| 武义县| 南丹县| 金平| 饶阳县| 遂溪县| 巴中市| 清镇市| 大兴区| 嫩江县| 衡阳县| 大新县| 隆安县| 靖边县| 巴林左旗| 游戏| 全州县| 阳高县| 防城港市| 丰县|