摘要:自动安装lnmp 第一步: Nginx 安装 Nginx 在 CentOS 7 系统上: rpm --import http://nginx.org/keys/nginx_signing.key rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rp
安装 Nginx
在 CentOS 7 系统上:
rpm--importhttp://nginx.org/keys/nginx_signing.key rpm-ivhhttp://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm yuminstallnginx
在 CentOS 6 系统上:
rpm--importhttp://nginx.org/keys/nginx_signing.key rpm-ivhhttp://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm yuminstallnginx
注意在安装 nginx RPM 包之前,如果您没有导入 nginx 的官方 GPG 密钥的话,会出一如下所示的警告:
warning: /var/tmp/rpm-tmp.KttVHD: Header V4 RSA/SHA1 Signature, key ID 7bd9bf62:NOKEY
启动 Nginx
安装完成后,nginx 是不会自动启动的.
在 CentOS 7 系统上:
$sudosystemctlstartnginx $sudosystemctlenablenginx $sudofirewall-cmd--zone=public--add-port=80/tcp--permanent $sudofirewall-cmd--reload
在 CentOS 6 系统上:
$sudoservicenginxstart $sudochkconfignginxon $sudoiptables-IINPUT-ptcp-mtcp--dport80-jACCEPT $sudoserviceiptablessave
测试 Nginx
nginx 的默认文档要目录是 /usr/share/nginx/html。默认的 index.html 文件一定已经在这目录下了。输入 http://nginx的ip地址/ 测试 web 页。
第二步: MariaDB/MySQL在 CentOS 7 系统上:
$sudoyuminstallmariadb-server $sudosystemctlstartmariadb $sudosystemctlenablemariadb
在 CentOS 6 系统上:
$sudoyuminstallmysql-server $sudoservicemysqldstart $sudochkconfigmysqldon
在成功启动 MariaDB/MySQL 服务后,执行在 MariaDB/MySQL 服务包中的脚本。这一次的运行会为为数据库服务器进行一些安全强化措施,如设置(非空)的 root 密码、删除匿名用户、锁定远程访问。
$sudomysql_secure_installation 第三步: PHP
为了 LNMP 需要,您至少需要安装上 PHP-FPM 和 PHP-MySQL 两个模块。PHP-FPM(FastCGI 进程管理器)实现的是 nginx 服务器和生成动态内容的 PHP 应用程序的访问接口。PHP-MySQL 模块使 PHP 程序能访问 MariaDB/MySQL 数据库。
安装 PHP 模块
在 CentOS 7 系统上:
$sudoyumphpphp-fpmphp-mysql
在 CentOS 6 系统上:
$sudoyum--enablerepo=remiinstallphpphp-fpmphp-mysql
启动 PHP-FPM
在 CentOS 7 系统上:
$sudosystemctlstartphp-fpm $sudosystemctlenablephp-fpm
在 CentOS 6 系统上:
$sudochkconfigphp-fpmon $sudoservicephp-fpmstart 第四步: 配置 LNMP 组合包
使 Httpd 不可用
在 CentOS 7 系统上:
$sudosystemctldisablehttpd
在 CentOS 6 系统上:
$sudochkconfighttpdoff
配置 Nginx
配置 nginx 虚拟主机,使得 nginx 可以通过 PHP-FPM 来处理 PHP 的任务。
sudovi/etc/nginx/conf.d/default.conf
#添加下面内容到server块
root/usr/share/nginx/html; indexindex.phpindex.htmlindex.htm; location~.php${ try_files$uri=404; fastcgi_pass127.0.0.1:9000; fastcgi_indexindex.php; fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name; includefastcgi_params; }
nginx 的默认工作线程数(在 /etc/nginx/nginx.conf 文件中指定的)是 1,通常来说我们创建的工作线程数应该和 CPU 核数相同。要确信您的 CPU 的核数,请运行下面这命令:
$grepprocessor/proc/cpuinfo|wc-l
如果您的 CPU 是 4 核的,就如下所示修改 /etc/nginx/nginx.conf 文件。
$sudovi/etc/nginx/nginx.conf worker_processes4;
配置 PHP
vi/etc/php.ini cgi.fix_pathinfo=0 date.timezone="PRC"
为了安全起见,我们希望的是 PHP 解释器只是处理指定文件路径的文件任务,而不是预测搜索一些并不存在的文件任务。上面的第一行起的就是这个作用。
第二行定义的是 PHP 中日期/时间相关函数使用相关的默认时区
测试 PHP
在 CentOS 7 系统上:
$sudosystemctlrestartnginx $sudosystemctlrestartphp-fpm
在 CentOS 6 系统上:
$sudoservicenginxrestart $sudoservicephp-fpmrestart
创建一个叫名叫 test.php 的文件,然后写入如下内容,并放入 /var/www/html/ 目录。
相关文章推荐
虚拟主机的专业参数,分别都是什么意思?2022-09-09
中非域名注册规则是怎样的?注册域名有什么用处? 2022-01-10
HostEase新年活动促销 美国/香港主机全场低至五折2021-12-28
HostGator下载完整备份教程分享2021-12-28
Flink中有界数据与无界数据的示例分析2021-12-28