本文实例讲述了CentOS7系统搭建LAMP及更新PHP版本操作。分享给大家供大家参考,具体如下:

搭建LAMP环境 用yum安装

安装Apache
  1. 安装Apache
[root@localhost /]# yum install httpd httpd-devel
  1. 启动Apache
[root@localhost /]# systemctl start httpd
  1. 设置Apache开机启动
[root@localhost /]# systemctl enable httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
  1. 查看Apache状态
[root@localhost /]# systemctl status httpd
● httpd.service - The Apache HTTP Server
  Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
  Active: active (running) since 五 2017-07-21 17:21:37 CST; 6min ago
   Docs: man:httpd(8)
      man:apachectl(8)
 Main PID: 2449 (httpd)
  Status: "Total requests: 11; Current requests/sec: 0; Current traffic:  0 B/sec"
  CGroup: /system.slice/httpd.service
      ├─2449 /usr/sbin/httpd -DFOREGROUND
      ├─2450 /usr/sbin/httpd -DFOREGROUND
      ├─2451 /usr/sbin/httpd -DFOREGROUND
      ├─2452 /usr/sbin/httpd -DFOREGROUND
      ├─2453 /usr/sbin/httpd -DFOREGROUND
      ├─2454 /usr/sbin/httpd -DFOREGROUND
      ├─2493 /usr/sbin/httpd -DFOREGROUND
      ├─2494 /usr/sbin/httpd -DFOREGROUND
      └─2495 /usr/sbin/httpd -DFOREGROUND

7月 21 17:21:35 nmserver-7.test.com systemd[1]: Starting The Apache HTTP Server...
7月 21 17:21:36 nmserver-7.test.com httpd[2449]: AH00558: httpd: Could not reliably determine the server's fully q...ssage
7月 21 17:21:37 nmserver-7.test.com systemd[1]: Started The Apache HTTP Server.
Hint: Some lines were ellipsized, use -l to show in full.

  1. 防火墙开启80端口, 依此执行以下命令
[root@localhost /]# firewall-cmd --permanent --zone=public --add-service=http
success
[root@localhost /]# firewall-cmd --permanent --zone=public --add-service=https
success
[root@localhost /]# firewall-cmd --reload
success
  1. 查看80端口监听状态
[root@localhost /]# netstat -tulp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address      Foreign Address     State    PID/Program name  
tcp    0   0 0.0.0.0:ssh       0.0.0.0:*        LISTEN   1084/sshd      
tcp    0   0 localhost:smtp     0.0.0.0:*        LISTEN   1486/master     
tcp6    0   0 [::]:ssh        [::]:*         LISTEN   1084/sshd      
tcp6    0   0 localhost:smtp     [::]:*         LISTEN   1486/master     
tcp6    0   0 [::]:http        [::]:*         LISTEN   2449/httpd     
udp    0   0 localhost:323      0.0.0.0:*              592/chronyd     
udp6    0   0 localhost:323      [::]:*               592/chronyd 
  1. 查看服务器IP
[root@localhost /]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
  link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
  inet 127.0.0.1/8 scope host lo
    valid_lft forever preferred_lft forever
  inet6 ::1/128 scope host 
    valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
  link/ether 00:0c:29:56:bc:cf brd ff:ff:ff:ff:ff:ff
  inet 192.168.5.133/24 brd 192.168.8.255 scope global ens33
    valid_lft forever preferred_lft forever
  inet6 fe80::20c:29ff:fe56:bccf/64 scope link 
    valid_lft forever preferred_lft forever
3: bridge0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN qlen 1000
  link/ether ea:89:d5:c7:32:73 brd ff:ff:ff:ff:ff:ff
  1. 浏览器登陆查看
    CentOS7系统搭建LAMP及更新PHP版本操作详解
安装mysql
  1. 安装mysql
[root@localhost /]# yum install mariadb mariadb-server mariadb-libs mariadb-devel
[root@localhost /]# rpm -qa |grep maria
mariadb-libs-5.5.52-1.el7.i686
mariadb-5.5.52-1.el7.i686
mariadb-server-5.5.52-1.el7.i686
mariadb-devel-5.5.52-1.el7.i686
  1. 开启Mysql,并设置开机启动,检查状态
[root@localhost /]# systemctl start mariadb 
[root@localhost /]# systemctl enable mariadb 
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
[root@localhost /]# systemctl status mariadb 
● mariadb.service - MariaDB database server
  Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
  Active: active (running) since 六 2017-07-22 21:19:20 CST; 21s ago
 Main PID: 9603 (mysqld_safe)
  CGroup: /system.slice/mariadb.service
      ├─9603 /bin/sh /usr/bin/mysqld_safe --basedir=/usr
      └─9760 /usr/libexec/mysqld --basedir=/usr --datadir=/v...

7月 22 21:19:15 nmserver-7.test.com mariadb-prepare-db-dir[9524]: ...
7月 22 21:19:15 nmserver-7.test.com mariadb-prepare-db-dir[9524]: ...
7月 22 21:19:15 nmserver-7.test.com mariadb-prepare-db-dir[9524]: ...
7月 22 21:19:15 nmserver-7.test.com mariadb-prepare-db-dir[9524]: ...
7月 22 21:19:15 nmserver-7.test.com mariadb-prepare-db-dir[9524]: ...
7月 22 21:19:15 nmserver-7.test.com mariadb-prepare-db-dir[9524]: ...
7月 22 21:19:15 nmserver-7.test.com mariadb-prepare-db-dir[9524]: ...
7月 22 21:19:16 nmserver-7.test.com mysqld_safe[9603]: 170722 21...
7月 22 21:19:16 nmserver-7.test.com mysqld_safe[9603]: 170722 21...
7月 22 21:19:20 nmserver-7.test.com systemd[1]: Started MariaDB ...
  1. 查看监听状态
[root@localhost /]# netstat -tulp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address      Foreign Address     State    PID/Program name  
tcp    0   0 0.0.0.0:ssh       0.0.0.0:*        LISTEN   1084/sshd      
tcp    0   0 0.0.0.0:mysql      0.0.0.0:*        LISTEN   9760/mysqld     
tcp6    0   0 [::]:ssh        [::]:*         LISTEN   1084/sshd      
tcp6    0   0 [::]:http        [::]:*         LISTEN   2449/httpd     
udp    0   0 localhost:323      0.0.0.0:*              592/chronyd     
udp6    0   0 localhost:323      [::]:*               592/chronyd 
  1. 数据库安全设置
[root@localhost /]# mysql_secure_installation 

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
   SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password"5">
  
  • 登陆数据库测试
  • [root@localhost /]# mysql -uroot -p
    Enter password: 
    Welcome to the MariaDB monitor. Commands end with ; or \g.
    Your MariaDB connection id is 11
    Server version: 5.5.52-MariaDB MariaDB Server
    
    Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.
    
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    
    MariaDB [(none)]> show databases;
    +--------------------+
    | Database      |
    +--------------------+
    | information_schema |
    | mysql       |
    | performance_schema |
    +--------------------+
    3 rows in set (0.02 sec)
    
    MariaDB [(none)]> 
    
    安装PHP
    1. 安装PHP
    [root@localhost /]# yum -y install php
    [root@localhost /]# rpm -ql php
    /etc/httpd/conf.d/php.conf
    /etc/httpd/conf.modules.d/10-php.conf
    /usr/lib/httpd/modules/libphp5.so
    /usr/share/httpd/icons/php.gif
    /var/lib/php/session
    
    1. 将php与mysql关联起来
    [root@localhost /]# yum install php-mysql
    [root@localhost /]# rpm -ql php-mysql
    /etc/php.d/mysql.ini
    /etc/php.d/mysqli.ini
    /etc/php.d/pdo_mysql.ini
    /usr/lib/php/modules/mysql.so
    /usr/lib/php/modules/mysqli.so
    /usr/lib/php/modules/pdo_mysql.so
    
    1. 安装常用PHP模块
    [root@localhost /]# yum install -y php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap curl curl-devel php-bcmath
    
    1. 测试PHP
    [root@localhost /]# cd /var/www/html/
    [root@localhost /]# ls
    [root@localhost /]# pwd
    /var/www/html
    [root@localhost /]# vi info.php
    
    <"5">
      
  • 重启Apache
  • [root@localhost /]# systemctl restart httpd
    
    1. 测试PHP
      CentOS7系统搭建LAMP及更新PHP版本操作详解

    更新PHP版本

    1. 首先查看是否有老版本
    [root@localhost /]# yum list installed | grep php
    
    1. 移除老版本
    [root@localhost /]# yum remove php.x86_64 php-cli.x86_64 php-common.x86_64 php-gd.x86_64 php-ldap.x86_64 php-mbstring.x86_64 php-mcrypt.x86_64 php-mysql.x86_64 php-pdo.x86_64
    
    1. 由于linux的yum源不存在php7.x,所以我们要更改yum源:
    [root@localhost /]# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
    [root@localhost /]# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
    
    1. 查看yum源中有没有php7.x
    [root@localhost /]# yum search php7
    Loaded plugins: fastestmirror, langpacks
    Loading mirror speeds from cached hostfile
    epel/x86_64/metalink                                                 | 5.9 kB 00:00:00   
     * base: mirrors.aliyun.com
     * epel: my.mirrors.thegigabit.com
     * extras: mirrors.cn99.com
     * updates: mirrors.163.com
     * webtatic: uk.repo.webtatic.com
    epel                                                         | 5.4 kB 00:00:00   
    webtatic                                                       | 3.6 kB 00:00:00   
    (1/5): epel/x86_64/group_gz                                              | 90 kB 00:00:01   
    (2/5): webtatic/x86_64/group_gz                                            | 448 B 00:00:04   
    (3/5): epel/x86_64/primary_db                                             | 6.9 MB 00:00:06   
    (4/5): epel/x86_64/updateinfo                                             | 1.0 MB 00:00:10   
    (5/5): webtatic/x86_64/primary_db                                           | 232 kB 00:00:14   
    ============================================================= N/S matched: php7 =============================================================
    mod_php71w.x86_64 : PHP module for the Apache HTTP Server
    mod_php72w.x86_64 : PHP module for the Apache HTTP Server
    php70w.x86_64 : PHP scripting language for creating dynamic web sites
    php70w-bcmath.x86_64 : A module for PHP applications for using the bcmath library
    php70w-cli.x86_64 : Command-line interface for PHP
    php70w-common.x86_64 : Common files for PHP
    php70w-dba.x86_64 : A database abstraction layer module for PHP applications
    php70w-devel.x86_64 : Files needed for building PHP extensions
    php70w-embedded.x86_64 : PHP library for embedding in applications
    php70w-enchant.x86_64 : Enchant spelling extension for PHP applications
    php70w-fpm.x86_64 : PHP FastCGI Process Manager
    php70w-gd.x86_64 : A module for PHP applications for using the gd graphics library
    php70w-imap.x86_64 : A module for PHP applications that use IMAP
    php70w-interbase.x86_64 : A module for PHP applications that use Interbase/Firebird databases
    php70w-intl.x86_64 : Internationalization extension for PHP applications
    php70w-ldap.x86_64 : A module for PHP applications that use LDAP
    php70w-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
    php70w-mcrypt.x86_64 : Standard PHP module provides mcrypt library support
    php70w-mysql.x86_64 : A module for PHP applications that use MySQL databases
    php70w-mysqlnd.x86_64 : A module for PHP applications that use MySQL databases
    php70w-odbc.x86_64 : A module for PHP applications that use ODBC databases
    php70w-opcache.x86_64 : An opcode cache Zend extension
    php70w-pdo.x86_64 : A database access abstraction module for PHP applications
    php70w-pdo_dblib.x86_64 : MSSQL database module for PHP
    php70w-pear.noarch : PHP Extension and Application Repository framework
    php70w-pecl-apcu.x86_64 : APCu - APC User Cache
    php70w-pecl-apcu-devel.x86_64 : APCu developer files (header)
    php70w-pecl-geoip.x86_64 : Extension to map IP addresses to geographic places
    php70w-pecl-igbinary.x86_64 : Replacement for the standard PHP serializer
    php70w-pecl-igbinary-devel.x86_64 : Igbinary developer files (header)
    php70w-pecl-imagick.x86_64 : Provides a wrapper to the ImageMagick library
    php70w-pecl-imagick-devel.x86_64 : Imagick developer files (header)
    php70w-pecl-memcached.x86_64 : Extension to work with the Memcached caching daemon
    php70w-pecl-mongodb.x86_64 : PECL package MongoDB driver
    php70w-pecl-redis.x86_64 : Extension for communicating with the Redis key-value store
    php70w-pecl-xdebug.x86_64 : PECL package for debugging PHP scripts
    php70w-pgsql.x86_64 : A PostgreSQL database module for PHP
    php70w-phpdbg.x86_64 : Interactive PHP debugger
    php70w-process.x86_64 : Modules for PHP script using system process interfaces
    php70w-pspell.x86_64 : A module for PHP applications for using pspell interfaces
    php70w-recode.x86_64 : A module for PHP applications for using the recode library
    php70w-snmp.x86_64 : A module for PHP applications that query SNMP-managed devices
    php70w-soap.x86_64 : A module for PHP applications that use the SOAP protocol
    php70w-tidy.x86_64 : Standard PHP module provides tidy library support
    php70w-xml.x86_64 : A module for PHP applications which use XML
    php70w-xmlrpc.x86_64 : A module for PHP applications which use the XML-RPC protocol
    php71w-bcmath.x86_64 : A module for PHP applications for using the bcmath library
    php71w-cli.x86_64 : Command-line interface for PHP
    php71w-common.x86_64 : Common files for PHP
    php71w-dba.x86_64 : A database abstraction layer module for PHP applications
    php71w-devel.x86_64 : Files needed for building PHP extensions
    php71w-embedded.x86_64 : PHP library for embedding in applications
    php71w-enchant.x86_64 : Enchant spelling extension for PHP applications
    php71w-fpm.x86_64 : PHP FastCGI Process Manager
    php71w-gd.x86_64 : A module for PHP applications for using the gd graphics library
    php71w-imap.x86_64 : A module for PHP applications that use IMAP
    php71w-interbase.x86_64 : A module for PHP applications that use Interbase/Firebird databases
    php71w-intl.x86_64 : Internationalization extension for PHP applications
    php71w-ldap.x86_64 : A module for PHP applications that use LDAP
    php71w-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
    php71w-mcrypt.x86_64 : Standard PHP module provides mcrypt library support
    php71w-mysql.x86_64 : A module for PHP applications that use MySQL databases
    php71w-mysqlnd.x86_64 : A module for PHP applications that use MySQL databases
    php71w-odbc.x86_64 : A module for PHP applications that use ODBC databases
    php71w-opcache.x86_64 : An opcode cache Zend extension
    php71w-pdo.x86_64 : A database access abstraction module for PHP applications
    php71w-pdo_dblib.x86_64 : MSSQL database module for PHP
    php71w-pear.noarch : PHP Extension and Application Repository framework
    php71w-pecl-apcu.x86_64 : APCu - APC User Cache
    php71w-pecl-apcu-devel.x86_64 : APCu developer files (header)
    php71w-pecl-geoip.x86_64 : Extension to map IP addresses to geographic places
    php71w-pecl-igbinary.x86_64 : Replacement for the standard PHP serializer
    php71w-pecl-igbinary-devel.x86_64 : Igbinary developer files (header)
    php71w-pecl-imagick.x86_64 : Provides a wrapper to the ImageMagick library
    php71w-pecl-imagick-devel.x86_64 : Imagick developer files (header)
    php71w-pecl-memcached.x86_64 : Extension to work with the Memcached caching daemon
    php71w-pecl-mongodb.x86_64 : PECL package MongoDB driver
    php71w-pecl-redis.x86_64 : Extension for communicating with the Redis key-value store
    php71w-pecl-xdebug.x86_64 : PECL package for debugging PHP scripts
    php71w-pgsql.x86_64 : A PostgreSQL database module for PHP
    php71w-phpdbg.x86_64 : Interactive PHP debugger
    php71w-process.x86_64 : Modules for PHP script using system process interfaces
    php71w-pspell.x86_64 : A module for PHP applications for using pspell interfaces
    php71w-recode.x86_64 : A module for PHP applications for using the recode library
    php71w-snmp.x86_64 : A module for PHP applications that query SNMP-managed devices
    php71w-soap.x86_64 : A module for PHP applications that use the SOAP protocol
    php71w-tidy.x86_64 : Standard PHP module provides tidy library support
    php71w-xml.x86_64 : A module for PHP applications which use XML
    php71w-xmlrpc.x86_64 : A module for PHP applications which use the XML-RPC protocol
    php72w-bcmath.x86_64 : A module for PHP applications for using the bcmath library
    php72w-cli.x86_64 : Command-line interface for PHP
    php72w-common.x86_64 : Common files for PHP
    php72w-dba.x86_64 : A database abstraction layer module for PHP applications
    php72w-devel.x86_64 : Files needed for building PHP extensions
    php72w-embedded.x86_64 : PHP library for embedding in applications
    php72w-enchant.x86_64 : Enchant spelling extension for PHP applications
    php72w-fpm.x86_64 : PHP FastCGI Process Manager
    php72w-gd.x86_64 : A module for PHP applications for using the gd graphics library
    php72w-imap.x86_64 : A module for PHP applications that use IMAP
    php72w-interbase.x86_64 : A module for PHP applications that use Interbase/Firebird databases
    php72w-intl.x86_64 : Internationalization extension for PHP applications
    php72w-ldap.x86_64 : A module for PHP applications that use LDAP
    php72w-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
    php72w-mysql.x86_64 : A module for PHP applications that use MySQL databases
    php72w-mysqlnd.x86_64 : A module for PHP applications that use MySQL databases
    php72w-odbc.x86_64 : A module for PHP applications that use ODBC databases
    php72w-opcache.x86_64 : An opcode cache Zend extension
    php72w-pdo.x86_64 : A database access abstraction module for PHP applications
    php72w-pdo_dblib.x86_64 : MSSQL database module for PHP
    php72w-pear.noarch : PHP Extension and Application Repository framework
    php72w-pecl-apcu.x86_64 : APCu - APC User Cache
    php72w-pecl-apcu-devel.x86_64 : APCu developer files (header)
    php72w-pecl-geoip.x86_64 : Extension to map IP addresses to geographic places
    php72w-pecl-igbinary.x86_64 : Replacement for the standard PHP serializer
    php72w-pecl-igbinary-devel.x86_64 : Igbinary developer files (header)
    php72w-pecl-imagick.x86_64 : Provides a wrapper to the ImageMagick library
    php72w-pecl-imagick-devel.x86_64 : Imagick developer files (header)
    php72w-pecl-libsodium.x86_64 : Wrapper for the Sodium cryptographic library
    php72w-pecl-memcached.x86_64 : Extension to work with the Memcached caching daemon
    php72w-pecl-mongodb.x86_64 : PECL package MongoDB driver
    php72w-pecl-redis.x86_64 : Extension for communicating with the Redis key-value store
    php72w-pecl-xdebug.x86_64 : PECL package for debugging PHP scripts
    php72w-pgsql.x86_64 : A PostgreSQL database module for PHP
    php72w-phpdbg.x86_64 : Interactive PHP debugger
    php72w-process.x86_64 : Modules for PHP script using system process interfaces
    php72w-pspell.x86_64 : A module for PHP applications for using pspell interfaces
    php72w-recode.x86_64 : A module for PHP applications for using the recode library
    php72w-snmp.x86_64 : A module for PHP applications that query SNMP-managed devices
    php72w-soap.x86_64 : A module for PHP applications that use the SOAP protocol
    php72w-sodium.x86_64 : Wrapper for the Sodium cryptographic library
    php72w-tidy.x86_64 : Standard PHP module provides tidy library support
    php72w-xml.x86_64 : A module for PHP applications which use XML
    php72w-xmlrpc.x86_64 : A module for PHP applications which use the XML-RPC protocol
    
     Name and summary matches only, use "search all" for everything.
    
    
    1. yum 安装php72w和各种拓展,选自己需要的即可:
    [root@localhost /]# yum -y install php72w php72w-cli php72w-common php72w-devel php72w-embedded php72w-fpm php72w-gd php72w-mbstring php72w-mysqlnd php72w-opcache php72w-pdo php72w-xml php72w-pear
    
    1. 完成安装 , 查看PHP版本
    [root@localhost /]# php -v
    
    1. 重启服务器
    [root@localhost /]# systemctl restart httpd
    

    CentOS7系统搭建LAMP及更新PHP版本操作详解

    希望本文所述对大家centos系统配置有所帮助。

    广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
    免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!