CentOS7上安装Nginx1.14.2并部署PHP静态网站
admin 2020-01-06 17:28:25 468人已围观
我这里以CentOS7.4 x64服务器为例记录如何安装Nginx并且部署一个php静态网站,无数据的。先从Nginx的安装开始:
- 1、先安装Nginx所依赖的软件:
- 安装gcc:
- 输入命令:yum install gcc-c++ 回车,
- 中间会出现选择,输入:y 再等待 执行完成。不出错的情况下基本ok,
- 安装pcre pcre-devel
- 输入命令:yum install -y pcre pcre-devel 回车
- 安装OpenSSL(如果网站不需要配置https也可以不安装,是自己情况来定)
- 输入命令:yum install -y openssl openssl-devel 回车
- 如果没有php依赖也需要检查和安装一下(要确保服务器有PHP环境才可以运行php页面):
yum install -y make cmake gcc gcc-c++ autoconf automake libpng-devel libjpeg-devel zlib libxml2-devel ncurses-devel bison libtool-ltdl-devel libiconv libmcrypt mhash mcrypt pcre-devel openssl-devel freetype-devel libcurl-devel
- 安装php-fpm
- 具体操作命令如下:
wget http://cn2.php.net/distributions/php-5.6.6.tar.gz tar -zxvf php-5.6.6.tar.gz
cd ./php-5.6.6/# 配置php的编译参数
./configure --prefix=/usr/local/php --with-mysql --with-mysqli --with-pdo_mysql --with-iconv-dir --with-zlib --with-libxml-dir --enable-xml --with-curl --enable-fpm --enable-mbstring --with-gd --with-openssl --with-mhash --enable-sockets --with-xmlrpc --enable-zip --enable-soap --with-freetype-dir=/usr/lib64# 开始编译安装
make
make install然后再到安装目录 /usr/local/php 下启动
# ./php-fpm
[27-Feb-2019 14:30:36] ERROR: failed to open configuration file '/usr/local/php/etc/php-fpm.conf': No such file or directory (2)
[27-Feb-2019 14:30:36] ERROR: failed to load configuration file '/usr/local/php/etc/php-fpm.conf'
[27-Feb-2019 14:30:36] ERROR: FPM initialization failed报错说明php-fpm的配置未配置,再到php的配置目录
cd /usr/local/php/etc
有一个php-fpm.conf.default的文件,cp复制
cp php-fpm.conf.default php-fpm.conf编辑 php-fpm.conf
找到以下配置项,去掉前面的注释, 配置如下pid = run/php-fpm.pid
配置完成后再去启动php-fpm,没有报错即表示OK
- 2、下载Nginx并传到服务器,或者直接在服务器上下载;
- 这里有2种方式可选,第一中就是直接去nginx官网下载linux版本tar包再上传到服务器上:
- 另外一种就是直接使用wget命令在需要安装的服务器上直接下载,命令: wget -c https://nginx.org/download/nginx-1.14.2.tar.gz
- 我这里是二次执行下载,上面显示nothing to do
- 3、安装和配置Nginx;
- 在自己的服务器上新建一个文件目录将nginx的tar包复制进去,再解压,解压命令:tar -zxvf nginx-1.14.2.tar.gz 回车,解压后进入到nginx目录,命令:cd nginx-1.14.2 回车,文件夹中有以下文件:
这里其实是nginx的源码包,要进过编译后才能使用。
执行命令: ./configure --prefix=/usr/local/nginx
## 安装到/usr/local/nginx的nginx目录下
在这步执行完成后还需要执行2行命令:
输入命令:make 回车
输入命令:make install 回车
进入刚才设置的按照目录,会发现此时有:conf html logs sbin 这几个文件夹,这几个文件夹的用途大概如下:
1.conf目录
conf目录中存放了Nginx的所有配置文件。mac下使用brew安装的Nginx配置文件目录为/usr/local/etc/nginx。其中,nginx.conf文件是Nginx服务器的主配置文件,其他配置文件是用来配置Nginx的相关功能的,比如,配置fastcgi使用的fastcgi.conf和fastcgi_params两个文件。在此目录下,所有的配置文件都提供了以.default结尾的默认配置文件,方便我们将配置过的.conf文件恢复到初始状态。
2.html目录
html目录中存放了Nginx服务器在运行过程中调用的一些html网页文件。
index.html文件。index.html是在浏览器页面上打印出“Welcome to nginx!”这样一句话。此文件是Nginx服务器运行成功后,默认调用的网页。
50x.html实在浏览器页面上打印出“The page you are looking for is temporarily unavailable.Please try again later.”Nginx在出现错误时会调用这个页面。
另外可以在html目录上自定义一些网页文件,并在配置文件中配置发生什么情况时转到相应的文件。
3.logs目录
logs目录用来存放Nginx服务器的日志。Nginx的日志功能强大,有不同的种类,可以自定义输出格式内容。
4.sbin目录
存放Nginx服务器的主程序。在brew安装的nginx服务器中是bin目录。
进入sbin目录下执行命令:./nginx 启动服务,在浏览器中输入自己服务器IP看能否出现nginx的页面:
到这里就表示安装过程基本OK, 在介绍几个常用命令:
cd /usr/local/nginx/sbin/
./nginx
./nginx -s stop
./nginx -s quit
./nginx -s reload
- 4、配置PHP网站;
- 我这里用来测试的是一个静态的php网页,比较简单我就直接在nginx的安装目录html里面新建一个文件夹放进去,路径是:/usr/myfile/nginx/html/demo/ 。放进去后就需要配置nginx到这个demo的index.php页面才可以访问,先进入nginx的安装目录config目录下找到nginx.conf,修改以下部分即可:
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html/demo/;#静态文件包路径
index index.html index.php;#首页
} 另外php还需要开启以下部分:location ~ \.php$ {
root html/demo/;#此处需要和上面保持一致
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi_params;
}退出之后我们需要进入sbin目录通过命令行重启 nginx服务:
命令: ./nginx -s reload
- 5、其他注意事项
由onekbit.com 经验笔记整理发布