Heim >Backend-Entwicklung >PHP-Tutorial >lnmp-Build (Nginx1.12.1; mysql5.7.20; php7.2.0)

lnmp-Build (Nginx1.12.1; mysql5.7.20; php7.2.0)

不言
不言Original
2018-04-21 16:29:391649Durchsuche

Der Inhalt dieses Artikels handelt von der lnmp-Konstruktion (Nginx1.12.1; mysql5.7.20; php7.2.0). Jetzt kann ich ihn mit Ihnen teilen

Abhängigkeitspakete installieren:

#yum install gcc bison bison-devel zlib-devel libmcrypt-devel mcrypt mhash-devel openssl-devel libxml2-devel libcurl-devel bzip2-devel readline-devel libedit-devel sqlite-devel libpng-devel libjpeg-devel freetype freetype-devel
  • 1

WWW-Benutzer erstellen:

#groupadd www#useradd -g www -s /sbin/nologin -M www
  • 1

  • 2

1. Installieren Sie Nginx1.12.1:

Nginx-Version mit Centos6.8-Spiegel Ja 1.12.1

#yum install -y nginx #/etc/init.d/nginx start
  • 1

  • 2

2. Installieren Sie mysql5. 7.20 :

#wget  
#rpm -Uvh mysql57-community-release-el6-9.noarch.rpm 
#yum install mysql-community-server
#service mysqld start
#grep 'temporary password' /var/log/mysqld.log  | awk '{print $NF}' 
#mysql -uroot -p
mysql>set global validate_password_policy=0;
mysql>set global validate_password_length=6; 
mysql>SET PASSWORD FOR 'root'@'localhost' =PASSWORD('******');

3. PHP7.2.0 installieren
3.1 Quellcode-Kompilierung und Installation

#wget rm -php-7.2.0.tar.xz
#tar xvJf php-7.2.0.tar -C /usr/local/
#cd /usr/local/php-7.2.0
#./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-mysqli --with-pdo-mysql --with-iconv-dir --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --enable-ftp  --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --disable-fileinfo --enable-maintainer-zts --with-libdir=lib64
# make 
# make install

Bei den oben genannten Konfigurationsschritten kann aufgrund fehlender Abhängigkeit ein Fehler gemeldet werden Auf diesem Computer habe ich einige andere Pakete installiert. Beim Kompilieren kann es anders sein.
Verwenden Sie die YUM-Suche, um die abhängigen Pakete zu finden wird es keine Fehler geben! ! !
Nachdem die Make-Installation abgeschlossen ist und keine Fehler vorliegen, können Sie mit den nächsten Schritten fortfahren.

3.2 PHP konfigurieren

#cp /usr/local/php-7.2.0/php.ini-development /usr/local/php/etc/php.ini
  • 1

<p style="margin-bottom: 7px;">#cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf<br/></p>
  • 1

#cp /usr/local/php-7.2.0/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
  • 1

#chmod +x /etc/init.d/php-fpm
  • 1

#cp /usr/local/php/etc/php-fpm.d/www.conf.default/usr/local/php/etc/php-fpm.d/www.conf
  • 1

3.3 PHP-FPM starten

# /etc/init.d/php-fpm startStarting php-fpm  done
  • 1

  • 2

3.4 Fügen Sie den PHP-Befehl zur Umgebungsvariablen

vim ~/.bash_profile
cat ~/.bash_profile# .bash_profile# Get the aliases and functionsif [ -f ~/.bashrc ]; then
    . ~/.bashrcfi# User specific environment and startup programsPATH=$PATH:$HOME/bin:/usr/local/php/binexport PATH

hinzu, um ihn wirksam zu machen:

#. ~/.bash_profile
  • 1

3.5 PHP-Version anzeigen:

# php -vPHP 7.2.0 (cli) (built: Dec 17 2017 19:58:31) ( ZTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2017 Zend Technologies

3.6 Testergebnisse:

vim /usr/share/nginx/html/a.php<?php
        phpinfo();    ?>


vim /etc/nginx/conf.d/default.confcat /etc/nginx/conf.d/default.confserver {
    listen       80;
    server_name  localhost;

    #charset koi8-r;
    #access_log  /var/log/nginx/host.access.log  main;

    location / {
        root   /usr/share/nginx/html;
        index index.php index.html index.htm;
    }
    location ~ \.php$ {
        root           html;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /usr/share/nginx/html$fastcgi_script_name;
        include        fastcgi_params;
    }    #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   /usr/share/nginx/html;
    }    # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    #
    #location ~ \.php$ {
    #    proxy_pass   http://127.0.0.1;
    #}

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    #location ~ \.php$ {
    #    root           html;
    #    fastcgi_pass   127.0.0.1:9000;
    #    fastcgi_index  index.php;
    #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
    #    include        fastcgi_params;
    #}

    # deny access to .htaccess files, if Apache&#39;s document root
    # concurs with nginx&#39;s one
    #
    #location ~ /\.ht {
    #    deny  all;
    #}}

Nginx配置文件修改的地方(在server里面添加 index.php格式的文件。增加一个location模块) 
重新加载Nginx,重启php-fpm

# /etc/init.d/nginx restartStopping nginx:                                            [  OK  ]
Starting nginx:                                            [  OK  ]
# /etc/init.d/php-fpm restartGracefully shutting down php-fpm . doneStarting php-fpm  done


测试:

# curl 192.168.1.185/a.php
  • 1

或者直接到网页上访问。 
lnmp-Build (Nginx1.12.1; mysql5.7.20; php7.2.0)

至此,lnmp环境搭建成功

相关推荐:

使用docker创建集成服务lnmp环境

在lnmp环境下thinkphp5的一些必要配置

LNMP源码编译安装php-5.5.32实例

Das obige ist der detaillierte Inhalt vonlnmp-Build (Nginx1.12.1; mysql5.7.20; php7.2.0). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn