PHP开发 Linux环境搭建

准备工作

Ubuntu20.04【其他Linux环境也可】搭建PHP7.3+Nginx(注:PHP其他版本安装也是同样的方式)

php test.php >/dev/null 2>&1 & #常用的PHP运行方式
& #后台运行
>> #输出内容追加到该文件
> #判断右边的文件是否存在,存在先删除该文件,然后创建一个新的文件,不存在的话直接创建
0 代表标准输入	 从键盘获得输入
1 代表标准输出	 输出到屏幕(即控制台)
2 代表错误输出	 输出到屏幕(即控制台)
command <filename 以filename文件作为标准输入
command 0<filename 同上
command <<delimiter 从标准输入中读入,直到遇到delimiter分隔符
/dev/nul #标准输入,所有往这里面输入的内容都会丢失,速成“黑洞”
2>&1 #代表两个输出绑定在一起,这条命令将错误输出跟标准输出到同一个地方

1.安装Nginx

# 1.查看nginx的版本号,存在则卸载
nginx -v
sudo apt-get --purge autoremove nginx #卸载命令
# 2.安装nginx
sudo apt-get install nginx -y
# 3.启动nginx
service nginx start
service nginx reload #重载配置
service nginx restart #重启
service nginx status #查看状态
​
#### nginx文件安装完成之后的文件位置:
- /usr/sbin/nginx:主程序
- /etc/nginx:存放配置文件
- /usr/share/nginx:存放静态文件
- /var/log/nginx:存放日志

2.安装MySQL

# 1.已安装MySQL,则卸载mysql
sudo apt-get autoremove --purge mysql-server -y
sudo apt-get remove mysql-server -y
sudo apt-get autoremove mysql-server -y
sudo apt-get remove mysql-common -y
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P #清理残留
​
# 2.安装MySQL
sudo apt-get install mysql-server -y    #服务端
sudo apt install mysql-client -y        #客户端
sudo apt install libmysqlclient-dev -y  #程序编译时链接的库
​
# 3.远程连接MySQL
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
# bind-address           = 127.0.0.1 #注释
sudo cat /etc/mysql/debian.cnf #查看默认配置
​
# 5.添加远程用户,授予权限
sudo mysql #进入mysql
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码'; #重置密码
create user 'root'@'%' identified by '密码'; #创建远程登录账号,root为用户名 %为任意主机,设置localhost则是仅当前主机可访问,也可以指定ip地址访问 identified by设置该用户的密码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; #授予远程登录账号权限
FLUSH PRIVILEGES; #刷新权限
use mysql #选择库
select user, host, plugin from user where user = 'root'; #查询用户信息
+------+-----------+-----------------------+
| user | host      | plugin                |
+------+-----------+-----------------------+
| root | %         | mysql_native_password |
| root | localhost | mysql_native_password |
+------+-----------+-----------------------+
2 rows in set (0.00 sec)
quit #退出
​
# 6.重启mysql
service mysql start #启动
service mysql restart #重启
service mysql status #查看mysql状态

3.安装redis

# 1.安装redis
apt-get install redis-server -y
# 2.操作redis服务命令(若redis-server未生效,试下service redis start)
service redis-server start #开启
service redis-server restart #重启
service redis-server stop #关闭
# 3.修改配置
vim /etc/redis/redis.conf
/bind #/bind查看匹配到的值,n往下查找 N网上查找
bind 127.0.0.1      #仅允许本地访问 0.0.0.0代表所有主机
protected-mode no   #是否开启保护模式
daemonized yes      #是否在后台运行
requirepass 123456  #密码设置为123456
​
#### redis文件安装完成之后的文件位置:
- /usr/sbin/redis:主程序
- /etc/redis:存放配置文件
- /usr/share/nginx:存放静态文件
- /var/log/redis:存放日志
​
​
# 可能遇到的问题,redis配置未生效 可能是因为开启redis守护进程
redis-server --daemonize yes #开启redis守护进程
redis-cli
config set protected-mode no #临时设置关闭保护模式
root@zgf:/home# kill 11215 #关闭进程
bash: kill: (11215) - No such process
root@zgf:/home# kill -9 11215 #强制关闭
bash: kill: (11215) - No such process
root@zgf:/home# killall redis-server #关闭所有redis-server服务
root@zgf:/home# /etc/init.d/redis-server stop
Stopping redis-server: redis-server.
​
netstat -nlt|grep 6379 #查看redis是否运行

611497d1b5eb4b09b6ed8156a50411da.png

75ca63df9d144ba580e09c4be69b51de.png

4.安装git

# 下载git
apt-get install git -y
​
# 生成秘钥
root@zgf:/var/cache/apt/archives# ssh-keygen -t rsa -C 123@qq.com 
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa
Your public key has been saved in /root/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:LzMD1cWCjosIebKB861IIT3ygyhzDe/kweKFV2D324M zgf@qq.com
The key's randomart image is:
+---[RSA 3072]----+
|         . ..    |
|    o . .....    |
|.o . o +. ..     |
|X.=   o.o        |
|o%.X o..S+       |
|*.O @ ..E.o      |
|o= X .  = ..     |
|. o o    =       |
|                 |
+----[SHA256]-----+

5.安装MongoDB

sudo apt-get install mongodb -y
pgrep mongod -l #查看进程是否启动成功
mongo -version #查看版本
​
service mongodb start #启动
service mongodb status #查看状态
service mongodb restart #重启
service mongodb stop #关闭

6.PHP环境搭建

1.添加PHP扩展源

sudo apt -y install software-properties-common apt-transport-https lsb-release ca-certificates #软件扩展源工具
sudo add-apt-repository ppa:ondrej/php  #添加PHP PPA源
sudo apt update #更新软件源缓存

2.安装PHP

apt-get update --option Acquire::Retries=100 --option Acquire::http::Timeout="300" #设置超时300s
sudo apt install php7.3-fpm php7.3-mysql php7.3-curl php7.3-gd php7.3-mbstring php7.3-xml php7.3-xmlrpc php7.3-zip php7.3-opcache php7.3-redis php7.3-memcache php7.3-mongodb php7.3-swoole php7.3-yaml -y #安装php7.3扩展
​
service php7.3-fpm start #开启
service php7.3-fpm restart #重启
#### php文件安装完成之后的文件位置:
- /usr/sbin/php-fpm7.3:主程序
- /etc/php/7.3/fpm/php.ini:存放配置文件
- /usr/share/php/7.3/fpm/status.html:存放静态文件
- /var/log/php7.3-fpm.log:存放日志
- /lib/systemd/system/php7.3-fpm.service service运行配置

3.nginx配置

vim /etc/nginx/nginx.conf
http {
    server {
    	listen 80; #端口
    	server_name test.com; #域名
    	root /www/wwwroot/dev; #网站目录
        large_client_header_buffers 4 16k;
    	location / {
        	index index.html index.htm index.php; #默认请求文件
        	try_files $uri $uri/ /index.html;
    	}
    	location ~ .php$ {
        	fastcgi_pass unix:/var/run/php/php7.3-fpm.sock; #配置fastcgi_pass
        	fastcgi_index index.php;
        	fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        	include fastcgi_params;
    	}
    }
}

4.PHP配置

vim /etc/php/7.3/fpm/pool.d/www.conf
/listen
listen=/var/run/php/php7.3-fpm.sock #配置fastcgi_pass

vim /etc/php/7.3/fpm/php.ini
cgi.fix_pathinfo=0

vim /etc/hosts #Ubuntu环境变量地址
test.com 127.0.0.1 #配置Ubuntu环境变量

C:\Windows\System32\drivers\etc\hosts #Windows环境变量地址
test.com 127.0.0.1 #配置Windows环境变量

php -i|grep php.ini #查看当前PHP运行目录
# 配置完就可以在网站上访问test.com

5.手动安装扩展

地址:https://www.sakuracio.com/archives/7.html

###################### 以宝塔举例子 ######################
# 1.下载libyaml
cd /opt
wget https://pyyaml.org/download/libyaml/yaml-0.2.5.tar.gz
tar -xvf yaml-0.2.5.tar.gz
cd ./yame-0.2.5
./configure --prefix=/usr/local
make test #编译测试
make
make install #安装
# 2.下载yaml
cd /opt
wget https://pecl.php.net/get/yaml-2.2.2.tgz
tar -xvf yaml-2.2.2.tgz
cd ./yame-2.2.2
# 3.使用phpize安装PHP扩展
phpize
# 4.先执行一遍phpize 会生成名为configure的shell脚本文件
./configure --with-php-config=/www/server/php/74/bin/php-config
# 5.注意将 --with-php-config 替换为 自己的PHP版本路径
make test #编译测试
make
make install #安装
# 会得到一段信息
# Installing shared extensions: /www/server/php/74/lib/php/extensions/no-debug-non-zts-20190902/
# 6.添加到php.ini
extension=/www/server/php/74/lib/php/extensions/no-debug-non-zts-20190902/yaml.so
# 重启PHP
service php-fpm-7.4 restart
###################### 以宝塔举例子 ######################

99.环境搭建常见问题

1.MySQL启动报错

su: warning: cannot change directory to /nonexistent: No such file or direct

sudo service mysql stop
sudo usermod -d /var/lib/mysql/ mysql
sudo service mysql start

 

  • 9
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值