centOS7 php环境安装

1、php下载解压后编码安装

遇到问题:解压安装报错 no acceptable C compiler found in $PATH 安装gcc后解决

安装:

下载路径:http://php.net/get/php-7.0.2.tar.gz/from/a/mirror

其中php版本可自己选择,但是所有可下载版本的页面路径没有找到。

官网直接下载路径:https://www.php.net/distributions/php-7.3.5.tar.bz2   

wget https://www.php.net/distributions/php-7.3.5.tar.bz2   

tar zxvf php-7.3.5.tar.bz2   

cd php-7.3.5

//--disable-fileinfo 有利于减少内存

./configure --prefix=/usr/local/php --enable-fpm --with-curl --enable-session --with-mysql --with-mysqli --with-pdo_mysql --disable-fileinfo 

//报错装gcc

yum  install   gcc
yum  install   gcc-c++
yum  install   gdb

//安装依赖 若之后实际使用按少了 可以再次用yum install安装 再编译执行 大概 ……

yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel mysql pcre-devel

//编译安装

make &&  make install

遇到问题:php7编译报错  内存超出

//加交换分区

dd if=/dev/zero of=/home/swap bs=1M count=2048

mkswap /home/swap

swapon /home/swap

//查看内存大小

free -m

//查看内存变化

free -h

遇到问题 : 找不到php.ini 及其他包含其字符串的文件名字

//查看php.ini位置/usr/local/php/bin中

./php --ini

//从源码复制

cp ~/php-7.3.5/php.ini-development /usr/local/php/bin/php.ini

//启动php-fpm

cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

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

/usr/local/php/sbin/php-fpm

验证启动成功

ps -ef |grep php-fpm

大概安装流程 为下载、解压、编译、执行

删除时直接删除安装目录  rm -rf 安装目录

搞破坏都是很容易……

2、nginx 或apache 安装

nginx

下载网址:http://nginx.org/download/nginx-1.16.0.tar.gz

wget http://nginx.org/download/nginx-1.16.0.tar.gz

 cd nginx-1.16.0
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_v2_module --with-http_stub_status_module --with-pcre --with-http_gzip_static_module --with-http_dav_module   --with-http_addition_module  --with-http_sub_module --with-http_flv_module  --with-http_mp4_module
//缺少模块

yum -y install openssl openssl-devel

make && make install

//加入环境变量

vi /etc/profile

//用英文冒号分隔多个路径

export PATH=$PATH:/usr/local/nginx/sbin

//启动

//校验配置文件

nginx -t

//加配置文件启动

nginx -c /usr/local/nginx/conf/nginx.conf

//重启 配置文件重新加载

nginx -s reload

//停止

nginx -s stop

//开80端口 若防火墙开80端口成功但无程序使用telnet仍然会失败

firewall-cmd --zone=public --add-port=80/tcp --permanent  

//重启防火墙

systemctl stop firewalld.service  
systemctl start firewalld.service 

//开机自启动

参照这里

cd /lib/systemd/system/
vim nginx.service
[Unit]
Description=nginx service
After=network.target 
   
[Service] 
Type=forking 
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true 
   
[Install] 
WantedBy=multi-user.target
systemctl start nginx.service          启动nginx服务

systemctl stop nginx.service           停止服务

systemctl restart nginx.service        重新启动服务

systemctl list-units --type=service     查看所有已启动的服务

systemctl status nginx.service          查看服务当前状态

systemctl enable nginx.service          设置开机自启动

systemctl disable nginx.service         停止开机自启动

基本流程 在/lib/systemd/system 里加一个服务文件然后用centos7的systemctl命令操作 比较简单

3、web服务器连php

nginx

建立根目录文件

mkdir /var/www

改nginx.conf

vi /usr/local/nginx/conf/nginx.conf

修改内容 源文件为注释内容 并更改root 和fastcit_param  否则访问不到

location ~ \.php$ {
       root /var/www; #指定php的根目录
       fastcgi_pass 127.0.0.1:9000;#php-fpm的默认端口是9000
       fastcgi_index index.php;
       fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
       include fastcgi_params;
}

nginx重启

创建php文件

vi /var/www/index.php

<?php

phpinfo();

配置成功验证

访问http://yourip/index.php

3、数据库

mysql

wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.16-2.el7.x86_64.rpm-bundle.tar

tar -xf mysql-8.0.16-2.el7.x86_64.rpm-bundle.tar

解压后

依次安装 common client libs service

若安装时报错 可以根据信息进行个别软件的升级

当时报一个软件在该版本中被废弃 只能抑制报错  加 --nodeps --force 抑制报错

rpm -ivh mysql-community-common-8.0.16-2.el7.x86_64.rpm --nodeps --force

rpm -ivh mysql-community-libs-8.0.16-2.el7.x86_64.rpm --nodeps --force

rpm -ivh mysql-community-client-8.0.16-2.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-server-8.0.16-2.el7.x86_64.rpm --nodeps --force

mysql 操作

/lib/systemd/system 里面有个 mysqld.service

systemctl status mysqld 也能运行

service mysqld start

service mysqld restart

service mysqld stop

systemctl start mysqld

systemctl restart mysqld

systemctl stop mysqld

systemctl status mysqld

mysql 改密码

初始密码位置

wheresis my.cnf

cat /etc/my.cnf

登录 mysql -uroot -p

自己的图没了借用下 Thanks♪(・ω・)ノ

mysql8.0 废弃了password函数

ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';

 

4、php扩展

swoole编译安装

wget https://github.com/swoole/swoole-src/archive/v4.3.4.tar.gz

tar -xf v4.3.4.tar.gz

phpize

./configure

make && make install

编译后文件

find  / -name swoole.so

/usr/local/php/lib/php/extensions/no-debug-non-zts-20180731/swoole.so

改php配置文件

find / -name php.ini

vi /usr/local/php/bin/php.ini

extension=swoole.so

redis编译安装

wget http://download.redis.io/releases/redis-5.0.5.tar.gz

tar -xf redis-5.05.tar.gz

mv redis-5.05 /usr/local

cd /usr/local

mv redis-5.05 redis

cd redis

./configure

make && make install

cd src

启动

./redis-server

再开一个链接(链接服务器的)

cd /usr/local/redis/src

redis-cli

自启动

修改其自带的启动脚本 需要修改为本地配置

vi /usr/local/redis/utils/redis_init_script

~

REDISPORT=6379  默认端口

EXEC=/usr/local/redis/src/redis-server
CLIEXEC=/usr/local/redis/src/redis-cli
 
PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/usr/local/redis/redis.conf"

~
cp /usr/local/redis/utils/redis_init_script  /etc/init.d/redisd

service redisd start

注:

lnmp或lamp集成包安装是方便但是编译安装能安装最新的

用yum安装需要改镜像 不同镜像不同版本

出于好奇,想查mysql8.0所有可用函数,可以去官网查但是自己英语水平不好……木有查到

linux 有个cmake命令 cmake后能够用make 安装php的时候更新了libzip 用到cmake 但是提示cmake低要求更新

php安装是 ./configure  全部安装正确后 根据参数 安装文件夹是有fpm的 源码有php.ini的备份文件

 

参考网址:

swoole安装:https://www.jianshu.com/p/462013f18177

redis自启动:https://blog.csdn.net/fukai8350/article/details/80775590

redis安装:https://www.cnblogs.com/butterflies/p/9628207.html

mysql8.0改密码 https://www.cnblogs.com/zgxblog/p/10708182.html

service详解: https://www.cnblogs.com/wuheng1991/p/7064067.html

service和systemctl区别:https://blog.csdn.net/weixin_41909810/article/details/82775247

nginx 连 php:https://www.cnblogs.com/jecyhw/p/5504855.html

php7 make内存报错:https://blog.csdn.net/god_for/article/details/50500342

centos7 systemctl详解:https://www.jianshu.com/p/828a40ae4bdd

centos7开机自启动:https://www.cnblogs.com/jepson6669/p/9131217.html

centos7开80端口:https://my.oschina.net/u/2337549/blog/1609797

nginx命令1:https://www.cnblogs.com/codingcloud/p/5095066.html

nginx命令2:https://blog.csdn.net/daipianpian/article/details/83034777

 

https://blog.csdn.net/z13615480737/article/details/79530334

http://phpstudy.php.cn/c.php/114641.html

configure脚本详解:https://www.jianshu.com/p/81916fba741c

php安装流程:https://blog.csdn.net/belen_xue/article/details/79418744

configure作用:https://blog.csdn.net/shenyanasop/article/details/9788145

https://www.jianshu.com/p/09db1a0e4160

https://www.cnblogs.com/grimm/p/5299212.html

https://ann88884043.iteye.com/blog/1836160

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值