一、配置CentOS 第三方yum源(CentOS默认的标准源里没有nginx软件包)
[root@localhost ~]# yum install wget #安装下载工具wget
[root@localhost ~]#wget http://www.atomicorp.com/installers/atomic #下载atomic yum源
[root@localhost ~]#sh ./atomic #安装
[root@localhost ~]# yum check-update #更新yum软件包
二、安装开发包和库文件
[root@localhost ~]# yum -y install ntp make openssl openssl-devel pcre pcre-devel libpng libpng-devel libjpeg-6b libjpeg-devel-6b freetype freetype-devel gd gd-devel zlib zlib-devel gcc gcc-c++ libXpm libXpm-devel ncurses ncurses-devel libmcrypt libmcrypt-devel libxml2 libxml2-devel imake autoconf automake screen sysstat compat-libstdc++-33 curl curl-devel
三、卸载已安装的apache、mysql、php
[root@localhost ~]# yum remove httpd[root@localhost ~]# yum remove mysql[root@localhost ~]# yum remove php
四、安装nginx
[root@localhost ~]# yum install nginx -y[root@localhost ~]# systemctl start nginx.service[root@localhost ~]# systemctl status nginx.service[root@localhost ~]# systemctl enable nginx.serviceCreated symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.[root@localhost ~]#
五、安装mariadb
[root@localhost ~]# yum install mariadb-devel mariadb mariadb-server[root@localhost ~]# systemctl start mariadb.service[root@localhost ~]# systemctl status mariadb.service● mariadb.service - MariaDB database server Loaded: loaded (/usr/lib/systemd/system/mariadb.service; disabled; vendor preset: disabled) Active: active (running) since Sat 2017-12-23 10:37:58 HKT; 4s ago Process: 18474 ExecStartPost=/usr/libexec/mariadb-wait-ready $MAINPID (code=exited, status=0/SUCCESS) Process: 18395 ExecStartPre=/usr/libexec/mariadb-prepare-db-dir %n (code=exited, status=0/SUCCESS) Main PID: 18473 (mysqld_safe) CGroup: /system.slice/mariadb.service ├─18473 /bin/sh /usr/bin/mysqld_safe --basedir=/usr └─18635 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/log/...Dec 23 10:37:56 localhost.localdomain mariadb-prepare-db-dir[18395]: MySQL manual for more instructions.Dec 23 10:37:56 localhost.localdomain mariadb-prepare-db-dir[18395]: Please report any problems at http://mariadb.org/jiraDec 23 10:37:56 localhost.localdomain mariadb-prepare-db-dir[18395]: The latest information about MariaDB is available at http://mar...org/.Dec 23 10:37:56 localhost.localdomain mariadb-prepare-db-dir[18395]: You can find additional information about the MySQL part at:Dec 23 10:37:56 localhost.localdomain mariadb-prepare-db-dir[18395]: http://dev.mysql.comDec 23 10:37:56 localhost.localdomain mariadb-prepare-db-dir[18395]: Consider joining MariaDB's strong and vibrant community:Dec 23 10:37:56 localhost.localdomain mariadb-prepare-db-dir[18395]: https://mariadb.org/get-involved/Dec 23 10:37:56 localhost.localdomain mysqld_safe[18473]: 171223 10:37:56 mysqld_safe Logging to '/var/log/mariadb/mariadb.log'.Dec 23 10:37:56 localhost.localdomain mysqld_safe[18473]: 171223 10:37:56 mysqld_safe Starting mysqld daemon with databases from /v.../mysqlDec 23 10:37:58 localhost.localdomain systemd[1]: Started MariaDB database server.Hint: Some lines were ellipsized, use -l to show in full.[root@localhost ~]# systemctl enable mariadb.serviceCreated symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service
#为root账户设置密码[root@localhost ~]#mysql_secure_installation #初始化MySQLEnter current password for root (enter for none): <---输入现在的root密码,因为我们还没设置,直接回车Set root password? [Y/n] Y <---是否设定root密码,当然设置了,输入Y回车New password: <---输入root密码,并回车,输入的过程中不会有任何显示Re-enter new password: <---再次输入root密码,并回车,输入的过程中不会有任何显示Remove anonymous users? [Y/n] Y <---是否删除匿名用户,删除,输入Y回车Disallow root login remotely? [Y/n] Y <---是否删禁止root用户远程登录,当然禁止,输入Y回车Remove test database and access to it? [Y/n] <---是否删除测试数据库test,看个人喜好Reload privilege tables now? [Y/n] Y <---刷新权限,输入Y回车最后出现:Thanks for using MySQL!MySql密码设置完成,重新启动 MySQL:
六、安装php
[root@localhost ~]# yum -y install php php-cli php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-mssql php-snmp php-soap
安装php和所需组件使PHP支持MySQL、FastCGI模式
[root@localhost ~]# yum install php-tidy php-common php-devel php-fpm php-mysql -y[root@localhost ~]# systemctl start php-fpm.service[root@localhost ~]# systemctl status php-fpm.service● php-fpm.service - The PHP FastCGI Process Manager Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; disabled; vendor preset: disabled) Active: active (running) since Sat 2017-12-23 10:53:59 HKT; 4s ago Main PID: 18953 (php-fpm) Status: "Ready to handle connections" CGroup: /system.slice/php-fpm.service ├─18953 php-fpm: master process (/etc/php-fpm.conf) ├─18955 php-fpm: pool www ├─18956 php-fpm: pool www ├─18957 php-fpm: pool www ├─18958 php-fpm: pool www └─18959 php-fpm: pool wwwDec 23 10:53:59 localhost.localdomain systemd[1]: Starting The PHP FastCGI Process Manager...Dec 23 10:53:59 localhost.localdomain systemd[1]: Started The PHP FastCGI Process Manager.[root@localhost ~]# [root@localhost ~]# systemctl enable php-fpm.serviceCreated symlink from /etc/systemd/system/multi-user.target.wants/php-fpm.service to /usr/lib/systemd/system/php-fpm.service.[root@localhost ~]#
七、配置nginx支持php
[root@localhost ~]# cp /etc/nginx/nginx.conf{,.bak} #将配置文件改为备份文件#修改nginx配置文件,添加fastcgi支持[root@localhost ~]# vim /etc/nginx/nginx.confvim /etc/nginx/nginx.conf #编辑user nginx nginx; #修改nginx运行账号为:nginx组的nginx用户:wq! #保存退出[root@localhost nginx]# vim /etc/nginx/conf.d/default.conf location / { root /usr/share/nginx/html; index index.php index.html index.htm; #增加index.php } location ~ .php$ { root /usr/share/nginx/html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name; include fastcgi_params; }
八、配置php
[root@localhost nginx]# cp /etc/php.ini{,.bak}[root@localhost nginx]#vim /etc/php.ini
expose_php = Off #禁止显示php版本的信息
九、重启nginx php-fpm
[root@localhost ~]# systemctl restart nginx.service
[root@localhost ~]# systemctl restart php-fpm.service
十、测试
[root@localhost ~]# cd /usr/share/nginx/html/
[root@localhost html]# vim index.php
<?php
phpinfo();
?>
[root@localhost html]# chown nginx.nginx /usr/share/nginx/html/ -R #设置目录所有者
#配置防火墙,开启80端口、3306端口
[root@localhost html]# firewall-cmd --zone=public --add-port=80/tcp --permanent
success
[root@localhost html]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
success
[root@localhost html]# systemctl restart firewalld.service
[root@localhost html]# systemctl enable firewalld.service
在客户端浏览器输入服务器IP地址,可以看到相关的配置信息!
#######################################################################
备注
nginx默认站点目录是:/usr/share/nginx/html/
权限设置:chown nginx.nginx/usr/share/nginx/html/ -R
MySQL数据库目录是:/var/lib/mysql
权限设置:chown mysql.mysql -R /var/lib/mysql
参考:
https://www.cnblogs.com/xiaoit/p/3991037.html
http://www.kuitao8.com/20150305/3571.shtml
原文链接: https://www.cnblogs.com/zhongguiyao/p/8092928.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/266375
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!