一、Nginx
1、安装nginx
yum install nginx
2、启动nginx
systemctl start nginx
除了systemctl start nginx之外,常用的相关命令还有systemctl stop nginx、systemctl restart nginx、systemctl status nginx
3、测试nginx是否安装成功
浏览器输入ip地址或者域名(已经解析过的域名),如下图所示,则安装成功。
4,配置Nginx支持PHP解析
编辑/etc/nginx/nginx.conf,蓝色字体处为新加内容
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
root /usr/share/nginx/html;
index index.php index.html index.htm;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
location / {
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
location ~ .php$ {
try_files $uri =404;
root /usr/share/nginx/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi.conf;
}
}
二、PHP
1,安装PHP
yum install php php-mysql php-fpm
安装过程中经常会见到如下问题:
2:postfix-2.10.1-6.el7.x86_64 有缺少的需求 libmysqlclient.so.18()(64bit)
2:postfix-2.10.1-6.el7.x86_64 有缺少的需求 libmysqlclient.so.18(libmysqlclient_18)(64bit)
解决方法:
把php-mysql换成php-mysqlnd
即执行
yum install php php-mysqlnd php-fpm
2、编辑PHP的配置文件,/etc/php.ini,注意去掉分号注释
vim /etc/php.ini
将 ;cgi.fix_pathinfo=1 改为 cgi.fix_pathinfo=0
3、编辑PHP-FPM配置文件
vim /etc/php-fpm.d/www.conf
将
user = nobody
group = nobody
改为
user = nginx
group = nginx
前提是已经创建了nginx用户和nginx组。如果没有创建方法:
1 groupadd -r nginx 2 useradd -r -g nginx nginx
4、启动PHP—FPM
systemctl start php-fpm
5、设置开机启动
systemctl enable php-fpm
6,确保Nginx配置文件修该之后,重启Nginx
systemctl restart nginx
7、在/usr/share/nginx/html/目录下创建phpinfo.php
内容如下:
<?php phpinfo();?>
查看php进程:ps aux | grep php 查看端口占用:netstat -ano|grep 80
8、浏览器上输入ip/phpinfo.php,如果出现如下界面,说明PHP和Nginx均安装和配置成功。
三、MySql
CentOS 7的yum源中貌似没有正常安装mysql时的mysql-sever文件,需要去官网上下载
1、补充yum源(1)
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
2、补充yum源(2)
rpm -ivh mysql-community-release-el7-5.noarch.rpm
3、安装mysql
yum install mysql-community-server
4、成功安装之后重启mysql服务
systemctl start mysqld
初次安装mysql是root账户是没有密码的
设置密码的方法
1 mysql -uroot 2 mysql> set password for ‘root’@‘localhost’ = password('mypasswd'); 3 mysql> exit
mysql -u root -p
输入密码之后,错误提示如下:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES),意思是root的密码不正确。
解决办法如下:
a.sudo mysqld_safe --user=root --skip-grant-tables --skip-networking &
输入命令之后,如果提示信息为:
mysqld_safe A mysqld process already exists
表示mysqld_safe进程存在,可以通过
ps -A|grep mysql 查看mysqld_safe进程ID
kill -9 -xxxx 终结ID为xxxx的进程