全程都是yum安装
注意:前提可以联网
service httpd stop
systemctl disable httpd
yum remove httpd
先查看是否安装了第三方软件库:
yum list installed | grep epel-release
或者是
rpm -q epel-release
yum install -y epel-release
先查看是否安装了nginx
yum list installed | grep nginx
或者是
rpm -q nginx
如果安装了则跳过这一步
yum install -y nginx
systemctl enable nginx
systemctl start nginx
ps aux|grep nginx
注意:
nginx配置文件:/etc/nginx
nginx根目录:/usr/share/nginx/html
修改nginx配置
vim /etc/nginx/nginx.conf
server下修改:
root /var/www/html;
chown -R nginx:nginx html/
nginx -t
systemctl reload nginx
-A INPUT -p tcp -mstate --state NEW -m tcp --dport 22 -j ACCEPT
下面添加:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8080-j ACCEPT
systemctl restart iptables
yum install -y mysql
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum install -y mysql-community-server mysql-devel
systemctl restart mysqld
systemctl enable mysqld
mysql -uroot -p
set password for 'root'@'localhost' =password('123456');
GRANT ALL PRIVILEGES ON . TO 'root'@'%'' IDENTIFIED BY '123456@'' WITH GRANT OPTION;
FLUSH PRIVILEGES;
systemctl restart mysqld
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
systemctl restart iptables
检查当前安装的PHP包
yum list installed | grep php
yum -y remove php*
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm
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
vim /etc/php.ini:
date.timezone=PRC
vim /etc/php-fpm.d/www.conf:
listen = /var/run/php-fpm/php-fpm.sock #本来是127.0.0.1:9000
listen.owner = nginx
listen.group = nginx
user = nginx
group = nginx
systemctl enable php-fpm
systemctl start php-fpm
注意:PHP-FPM 启动之后,会生成 socket 文件 /var/run/php-fpm/php-fpm.sock作为守护进程运行 FastCGI 服务。
vim /etc/nginx/nginx.conf
server {
listen 80;
listen [::]:80 default_server;
server_name localhost;
root /var/www/html;
index index.html index.php index.htm
include /etc/nginx/default.d/*.conf;
location / {
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
systemctl restart nginx
vi /var/www/html/info.php:
访问php文件时报错:403 forbidden
查看nginx的error日志,显示
[error] 6830#0: *5 "/var/www/html/index.php" is forbidden (13: Permission denied)
两个可能原因:
chmod -R 777 /var/www
chmod -R 777 /var/www/html
/usr/sbin/sestatus
重启生效
reboot
访问PHP文件时变成下载
location ~ .*\.php$ {
fastcgi_pass 127.0.0.1:9000;
}
上面的意思,就是说,碰到.php结尾的文件,传递给后方127.0.0.1的9000端口上。
当然啦,你的php-fpm解析器也需要正常运行,并监听好9000端口,才能最终生效并有效处理php脚本。