Centos下安装PHP
2021-06-15 本文已影响0人
奋斗_登
启用Remi repository
PHP7.x包可以在几个不同的存储库中使用,我们使用Remi repository,它提供包括PHP在内的各种软件包的更新。
Remi repository 依赖EPEL repository ,运行以下命令以启用EPEL和Remi repository
sudo yum install epel-release yum-utils
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
Yum可能会提示你导入repository GPG密钥,键入y并点击Enter。
yum-utils remi
Centos7安装7.4
PHP7.4是PHP7.X的最新稳定版本,大多数php框架和应用程序,包括WordPress、Drupal、Joomla和Laravel,都完全支持7.4。
- 启用PHP 7.4Remi repository
sudo yum-config-manager --enable remi-php73
- 安装PHP7.4和一些常用的PHP模块
sudo yum install php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysqlnd
- 验证版本
php -v
配置PHP7.4使用Nginx
Nginx没有对处理PHP文件的内置支持,因此我们需要安装一个单独的应用程序,如php fpm,它将处理PHP文件。
运行以下命令安装PHP FPM包
sudo yum install php-fpm
默认情况下,PHP FPM将apache在端口9000上以用户身份运行,我们将用户更改为nginx。请编辑以下行
/etc/php-fpm.d/www.conf
user = nginx
group = nginx
listen.owner = nginx
listen.group = nginx
创建用户
useradd -M -s /sbin/nologin nginx
赋予权限
chown -R root:nginx /var/lib/php
更改好,启用并启动PHP FPM服务
sudo systemctl enable php-fpm
sudo systemctl start php-fpm
接下来编辑nginx配置文件,以便可以处理PHP
server {
listen 80;
server_name xx.com;
root /home/laravel_demo1/public;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block";
add_header X-Content-Type-Options "nosniff";
index index.php;
charset utf-8;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
error_page 404 /index.php;
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
include fastcgi_params;
try_files $uri =404;
}
location ~ /\.(?!well-known).* {
deny all;
}
}
其它
如果在部署laravel框架时发先如下错误The stream or file "/storage/logs/laravel.log" could not be opened: failed to open stream: Perm...
则需要如下解决
-- www更改为你的用户组,笔者的用户组为nginx
sudo chown -R $USER:www storage
sudo chown -R $USER:www bootstrap/cache
然后设置目录权限
chmod -R 775 storage
chmod -R 775 bootstrap/cache