linux php环境搭建教程,linux php环境搭建教程

linux php环境搭建的方法:首先获取相关安装包;然后安装Apache以及mysql;接着修改配置文件“httpd.conf”;最后设置环境变量和开机自启,并编译安装PHP即可。

e34f0ffd12bde44d01fe7ff55183a36d.png

一、获取安装包PHP下载地址:http://cn.php.net/distributions/php-7.2.6.tar.gz

Apache下载地址:http://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.33.tar.gz

MySQL下载地址: https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz

二、安装Apache

1. 依赖包安装1) 安装编译器gcc、gcc-c++yum install -y gcc gcc-c++

2) 安装依赖包expat-devel、zlib-devel、openssl-develyum install -y expat-devel zlib-devel openssl-devel

2) 安装依赖包apr

注意:如果依赖包不存在,则去网站找最新的包,改成相应版本号下载即可wget http://mirror.bit.edu.cn/apache//apr/apr-1.6.3.tar.gz

tar zxvf apr-1.6.2.tar.gzcd apr-1.6.2

./configure --prefix=/usr/local/apr

make && make install

3) 安装依赖包apr-utilwget http://mirror.bit.edu.cn/apache//apr/apr-util-1.6.1.tar.gz

tar zxvf apr-util-1.6.0.tar.gzcd apr-util-1.6.0

./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

make && make install

4) 安装依赖包pcrewget https://ftp.pcre.org/pub/pcre/pcre-8.42.tar.gz

tar zxvf pcre-8.41.tar.gzcd pcre-8.41

./configure --prefix=/usr/local/pcre

make && make install

注意:将apr、apr-util安装包拷贝到Apache安装包的srclib目录中

名称分别命名为apr、apr-util,不要后面的版本号

2. 安装过程1) 解压Apache安装包tar zxvf httpd-2.4.33.tar.gz

注意: 将apr、apr-util安装包拷贝到Apache安装包的srclib目录中

名称分别命名为apr、apr-util,不要后面的版本号

2) 编译、安装cd httpd-2.4.28

./configure --prefix=/usr/local/server/apache \

--with-apr=/usr/local/apr \

--with-apr-util=/usr/local/apr-util \

--with-pcre=/usr/local/pcre \--with-mysql=shared,mysqlnd

--enable-so \

--enable-ssl \

--enable-deflate \

--enable-rewrite \

--enable-headers \

--enable-expires \

--disable-cgid\

--disable-cgi

3. 修改配置文件httpd.confvim /usr/local/server/apache/conf/httpd.conf

去掉ServerName前面的 #

并将ServerName后面的网址改为localhost:80

4. 将httpd加入系统服务并设置开机自启1) 将httpd加入系统服务cp /usr/local/server/apache/bin/apachectl /etc/init.d/httpd

2) 修改/etc/init.d/httpd,在第3行加入以下内容# chkconfig: 345 85 15# description: Activates/Deactivates Apache Web Server

注意: 代码中的 # 不可以去掉

3) 设置系统服务开机自启systemctl enable httpd

4) 启动Apacheservice httpd start

三、安装MySQL

1. 安装前准备1) 解压安装包tar zxvf mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz mv mysql-8.0.11-linux-glibc2.12-x86_64 /usr/local/server/mysql

2) 创建用户和用户组并分配相应的权限groupadd mysql

useradd -r -g mysql mysql

chown -R mysql:mysql . #注意后面有个点

2. mysql的初始化并做基本配置1) 初始化mysqlcd /usr/local/server/mysql

bin/mysqld \

--initialize \

--user=mysql \

--basedir=/usr/local/server/mysql \

--datadir=/usr/local/server/mysql/data \

注意 : 如果报错 , 则缺哪个库yum安装即可bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

yum install libaio

2) 配置mysqlvim my.cnf # 创建配置文件

本示例仅保证mysql可以正常运行,更多配置请参考官方文档说明[mysqld]skip-grant-tablesbasedir = /usr/local/server/mysqldatadir = /usr/local/server/mysql/dataport = 3306

将配置文件软链接到 /etc/ 目录rm -rf /etc/my.cnfln -s /usr/local/server/mysql/my.cnf /etc/my.cnf

3. 启动mysql并设置root用户密码1) 启动mysqlsupport-files/mysql.server start # 启动MySQLbin/mysql -uroot -p # 这里直接回车,无须输入密码

2) 重置root用户密码use mysql;

update user set authentication_string='' where user='root';

exit;

3 ) 删除/etc/my.cnf文件的 skip-grant-tables , 重启mysql服务support-files/mysql.server restart #重启mysql

4 ) 用root用户进行登录

mysql -u root -p

passwrod:直接回车

5 ) 使用ALTER修改root用户密码,初始化完毕 。退出,使用新密码登录

ALTER user 'root'@'localhost' IDENTIFIED BY 'new_password';

4. 设置环境变量和开机自启1) 设置环境变量

编辑profile文件vim /etc/profile

添加下列信息到profile尾部export PATH=$PATH:/usr/local/server/mysql/bin

使环境变量立即生效source /etc/profile

2) 设置开机自启cp support-files/mysql.server /etc/init.d/mysqld

systemctl enable mysqld

5. 防火墙设置CentOS默认开启了 firewall 防火墙,下面我们使用firewall开启3306l端口

1) 开启之前我们先查询下3306端口是否开启firewall-cmd --query-port=3306/tcp

2) 我们可以选择临时开启或者永久开启3306端口firewall-cmd --add-port=3306/tcp # 临时开启3306端口 firewall-cmd --permanent --zone=public --add-port=3306/tcp # 永久开启3306端口

3) 重启firewallfirewall-cmd --reload

6. 远程访问1) 给予任何主机访问mysql的权限create user root@'%' identified by 'your_password';

grant all privileges on *.* to root@'%';

2) 使权限修改生效FLUSH PRIVILEGES;

四、安装PHP

1. 安装步骤1) 安装依赖包yum -y install wget vim pcre pcre-devel openssl openssl-devel \

libicu-devel gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng \

libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib \

zlib-devel glibc glibc-devel glib2 glib2-devel ncurses ncurses-devel \

curl curl-devel krb5-devel libidn libidn-devel openldap openldap-devel \

nss_ldap jemalloc-devel cmake boost-devel bison automake libevent \

libevent-devel gd gd-devel libtool* libmcrypt libmcrypt-devel mcrypt \

mhash libxslt libxslt-devel readline readline-devel gmp gmp-devel \

libcurl libcurl-devel openjpeg-devel libcurl.x86_64 libcurl-devel.x86_64 \

libjpeg-turbo libjpeg-turbo-devel libpng freetype libpng-devel \

freetype-devel icu libicu libicu-devel openldap openldap-clients \

openldap-devel openldap-serverscp -frp /usr/lib64/libldap* /usr/lib/

2) 解压PHP安装包tar zxvf php-7.2.6.tar.gz

3) 编译安装cd php-7.2.6

./configure --prefix=/usr/local/server/php \

--with-apxs2=/usr/local/server/apache/bin/apxs \

--with-config-file-path=/usr/local/server/php \

--enable-fpm \

--with-fpm-user=www \

--with-fpm-group=www \

--enable-mysqlnd \

--with-mysqli=mysqlnd \

--with-pdo-mysql=mysqlnd \

--enable-mysqlnd-compression-support \

--with-iconv-dir \

--with-freetype-dir \

--with-jpeg-dir \

--with-png-dir \

--with-zlib \

--with-libxml-dir \

--enable-xml \

--disable-rpath \

--enable-bcmath \

--enable-shmop \

--enable-sysvsem \

--enable-inline-optimization \

--with-curl \

--enable-mbregex \

--enable-mbstring \

--enable-intl \

--with-libmbfl \

--enable-ftp \

--with-gd \

--with-openssl \

--with-mhash \

--enable-pcntl \

--enable-sockets \

--with-xmlrpc \

--enable-zip \

--enable-soap \

--with-gettext \

--disable-fileinfo \

--enable-opcache \

--with-pear \

--enable-maintainer-zts \

--with-ldap=shared \

--without-gdbm \make && make install

2. 配置php.ini1) 将配置文件拷贝到PHP安装目录cp php.ini-* /usr/local/server/php/

2) 生成php.inicp php.ini-development /usr/local/server/php/php.inicp /usr/local/server/php/etc/php-fpm.conf.default /usr/local/server/php/etc/php-fpm.conf

3 ) 修改php.ini配置文件expose_php = Off

short_open_tag = ON

max_execution_time = 300

max_input_time = 300

memory_limit = 128M

post_max_size = 32M

date.timezone = Asia/Shanghai

mbstring.func_overload=2

extension_dir = "/usr/local/server/php/lib/php/extensions/no-debug-zts-20170718/"

3. 修改httpd.conf载入PHP模块,如httpd.conf中有下列代码则直接去掉前面#即可,没有则加入LoadModule php7_module modules/libphp7.so

在底部加入以下代码使得Apache可以解析php文件

AddType application/x-httpd-php .php

找到如下代码,在index.html后面加入index.php

DirectoryIndex index.html

重启Apacheservice httpd restart

4. 测试PHP是否成功安装创建/usr/local/server/apache/htdocs/index.phpvim /usr/local/server/apache/htdocs/index.php

在index.php中编写以下代码<?php

phpinfo();?>

如果出现以下页面则安装成功

f87c5ed04124fecdd6cac05989bba98a.png

MYSQL8.0安装后 phpMyAdmin无法登陆解决

MYSQL8.0的密码验证方式从mysql_native_password改为了caching_sha2_password

vim my.cnfdefault_authentication_plugin=mysql_native_password

进入mysql修改一下密码和加密插件use mysql;

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_password';

FLUSH PRIVILEGES;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/539537.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jsp放在web-inf下的注意事项

原文&#xff1a;http://blog.csdn.net/whatlookingfor/article/details/38381881 ------------------------------------------------- web-inf目录是不对外开放的&#xff0c;外部没办法直接访问到。所有只能通过映射来访问&#xff0c;比如映射为一个action或者servlet通过…

asp.net 获取全部在线用户_Qamp;A | 在线考试问卷答疑

01.如何批量导入试题&#xff1f;如果您已经在word或者excel中准备好了考试文档&#xff0c;通过批量导入试题的方式&#xff0c;可以让考试问卷的制作更加方便快捷。详细了解批量导入考试的文本格式&#xff1a;【点击此处】02.如何进行考试随机抽题&#xff1f;老师事先建立题…

PHP 框架 模块化,Laravel 的模块化开发框架 Notadd RC1

本文我们要和大家分享 Laravel 的模块化开发框架 Notadd RC1 的介绍&#xff0c;它的优点是修复了首页编辑模式下滚动的BUG (Eleven)&#xff0c;修复了后台菜单管理修改后不跳转的BUG (ganlanshu0211)&#xff0c;修复后台 ESLint 的 Camelcase 的错误 (狒狒)&#xff0c;暂时…

spring mvc 工作流程

1A&#xff09;客户端发出http请求&#xff0c;只要请求形式符合web.xml 文件中配置的*.action的话&#xff0c;就由DispatcherServlet 来处理。 1B&#xff09;DispatcherServlet再将http请求委托给映射器 的对象来将http请求交给对应的Action来处理 2&#xff0…

excel切片器_如何在Excel表格中使用切片器

切片器除了在数据透视表中会使用到&#xff0c;在Excel的表格功能下面&#xff0c;也是可以进行使用的。下面就来介绍一下如何使用切片器这个工具。创建和使用切片器1.首先就是要创建一个表格。选中目标区域&#xff0c;使用快捷键CtrlT&#xff0c;创建一个表格。2.点击“插入…

分阶段付款 学php,项目整理-支付宝的支付问题

支付宝作为一个被广泛使用的支付工具&#xff0c;在是用的时候可以被广泛使用。可以使用demo提取(由于当时开发时SDK下载路径无法下载&#xff0c;直接从DEMO中筛选了需要部分)------------------我是开始开发思路的分割线--------------------------本次主要是APP支付的流程。…

Mac os区别_SN及Mac地址烧录

platform:RK3399 OS:Android 7.1 参考: 1.比特人生 https://blog.csdn.net/ielife/article/details/86719313 2.KrisFei https://blog.csdn.net/kris_fei/article/details/79447343?ops_request_misc%257B%2522request%255Fid%2522%253A%2522158883304619726869022990%2522%25…

linux 查看数据库和表 mysql 命令

2019独角兽企业重金招聘Python工程师标准>>> 查看是否有安装数据库 &#xff1a;rpm -qa|grep -i mysql 如图已安装&#xff1a; 未安装&#xff1a; 查看MySQL版本的四种方法 1 在终端下执行 mysql -V 2 在help中查找 mysql --help |grep Distrib 3 在mysql 里查看…

servlet/filter/listener/interceptor区别与联系

下面从几个方面阐述一下题目中四个概念的区别与联系&#xff1a; 1、概念 2、生命周期 3、职责 4、执行过程 一、概念&#xff1a; 1、servlet&#xff1a;servlet是一种运行服务器端的Java应用程序&#xff0c;具有独立于平台和协议的特性&#xff0c;并且可以动态的生成web页…

电脑系统哪个最好用_袪痘袪痘印哪个产品最好 祛痘印最好用的产品十大推荐...

原标题&#xff1a;袪痘袪痘印哪个产品最好 祛痘印最好用的产品十大推荐痘痘下去了&#xff0c;痘印却顽固不化。有些痘印如果不及时修复&#xff0c;会留下疤痕和坑。我们真的不敢去想他们。所以有痘印痘印的时候一定要及时使用护肤品&#xff0c;不要在脸上留下什么遗憾&…

五阿哥钢铁电商平台Docker容器云平台建设实践——你想知道的都在这里!

前言 五阿哥钢铁电商平台&#xff08;www.wuage.com&#xff09;是由钢铁行业第一的中国五矿与互联网第一的阿里巴巴联手打造&#xff0c;并充分运用双方股东优势资源&#xff0c;即&#xff1a;阿里巴巴在大数据、电商运营、互联网产品技术上的巨大优势&#xff0c;尤其是在B2…

web浏览器_Web上的分享(Share)API

我认为Web Share API非常酷&#xff0c;简而言之&#xff0c;它会利用您所使用的平台上的原生共享功能(如果该平台支持的话)。我喜欢这个&#xff1a;在iOS上激活的Web Share API远远不止这些东西&#xff1a;为什么&#xff1f;Web Share API只是几行代码。简单&#xff01;没…

exfat单元分配要设置多少_微软宣布,支持往Linux内核里添加exFAT存储了!跨系统存储的福音...

栗子 发自 凹非寺 量子位 报道 | 公众号 QbitAIexFAT&#xff0c;是微软开发的文件系统&#xff0c;为闪存而生。你的U盘、SD卡、手机等等存储设备&#xff0c;能存4G以上的大文件&#xff0c;很大程度上是它的功劳。可exFAT一直是专有的&#xff0c;微软手握多项专利。所以&am…

Jetbrains 系 IDE 编辑器的代码提示功能

著名的 Jetbrains 可谓编程界的一大福音&#xff0c;众多有名代码编辑器比如 ItelliJ IDEA、PHPStorm、WebStorm、PyCharm 等&#xff0c;均出自这家公司麾下。 对于中国的Java开发者来说&#xff0c;可能使用 Eclipse 的人最多。 使用Idea的程序员也不少, 而且每个人都在鼓吹其…

tkmybatis 子查询_真假童子命符箓道长教你如何查询

童子命查询方法一&#xff1a;童子命在相术里&#xff0c;指的是一生都霉运连连如过本命年的人。古代关于真童子命查询有口诀“春秋甲寅子&#xff0c;冬夏卯未辰&#xff1b; 金木乙卯未&#xff0c;水火庚辛壬&#xff1b; 土命逢辰巳&#xff0c;童子定为真”解释上面的口诀…

ECLIPSE配置OSGI服务器

eclipse版本如下&#xff1a; Eclipse Java EE IDE for Web Developers. Version: Mars Release (4.5.0) Build id: 20150621-1200 ------------------------ 1、进入eclipse-----run----run configuration---osgi framework---new 2、取消全选 3、在搜索框中输入 osgi&a…

AD19 add pins to nets错误_为什么我认为Rust的Result错误处理方式不如Exception

由于是对技术的个人评判&#xff0c;欢迎理性讨论。我曾经也当过纯函数式的脑残粉&#xff0c;认为宇宙第一棒的代数数据结构用来处理错误&#xff0c;是无上的优雅和绝对的安全。一个看似人畜无害的接口抛出异常带来的崩溃&#xff0c;是各类疑难杂症的罪魁祸首。综合起来&…

Java @Transient 注解使用

2019独角兽企业重金招聘Python工程师标准>>> 我们建实体类的时候啊&#xff0c;有时候实体类的属性和数据库表字段不一致的时候&#xff0c;比如多一个属性&#xff0c;那你不加这个注解就会报错&#xff0c;因为映射的时候会提示&#xff08;提示啥我给忘了&#x…

oracle—ebs_采购功能点操作手册,oracle—EBS_采购功能点操作手册

erp实施企业采购模块构架及日常业务操作指导“人力资源”页签可以设置是否“使用审批层次结构”来决定采购单据的审批路径。如不选定&#xff0c;则表示采购单据将使用员工的“主管”结构来进行审批。“员工编号”方法默认自业务组定义时的“员工编号生成”方法设置。1.2采购选…

combobox控件 如何把三角形放大_初中数学|全等三角形全部知识点总结

今天&#xff0c;琦老师为大家整理了[初中数学重要考点&#xff0c;全等三角形的全部知识点]&#xff0c;希望帮助大家中考数学快速提分( #小学数学#初中数学#数学)除了图片内容&#xff0c;大米君也为大家分享[如何灵活运用这些知识点的方法]大家记得跟着做起来哦~提高复习效果…