上一篇文章,记录了在linux下安装和配置mysql。本篇就记录一下nginx的安装和配置。
安装pcre依赖
PCRE(Perl Compatible Regular Expressions)是一个Perl库,包括 perl 兼容的正则表达式库。Nginx的rewrite要依赖于这个库。所以先安装这个库。
进入官网http://www.pcre.org/,找到pcre的源码下载url,使用wget下载
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.40.tar.gz
下载后解压、编译、安装
./configure --prefix=/usr/local/pcre
make
sudo make install
下载Nginx
在官网下载nginx的稳定版本
wget http://nginx.org/download/nginx-1.10.3.tar.gz
安装编译Nginx
将下载的nginx解压后,进行编译前的预编译:
cd nginx-1.10.3
./configure --prefix=/usr/local/nginx --with-pcre=../pcre-8.40
make
sudo make install
注意,上面编译配置的参数,pcre不是已经安装好的pcre路径,而是未编译的代码包的路径。在本例中,pcre代码包和nginx代码包下载到了同一个目录下。
启动Nginx
进入Nginx的安装目录下,直接起动Nginx
cd /usr/local/nginx/sbin
sudo ./nginx
注意,此时访问本机ip的80端口,如果能看到Nginx的欢迎页面,说明安装配置成功。如果不成功,可能的问题时防火墙禁止访问80端口。需要我们做如下配置:
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
#重启防火墙
sudo systemctl restart firewall.service
启动PHP-FPM
在安装php时,我们配置了php-fpm,在这里我们需要启动PHP-FPM。
进入php的安装目录,php-fpm在sbin目录下。
sudo ./php-fpm
首次启动,会报一个/usr/local/php7/etc/php-fpm.conf未找到的错误。直接到/usr/local/php7/etc/目录下,会看到有一个php-fpm.conf.default的文件。将此文件重命名即可。
mv php-fpm.conf.default php-fpm.conf
此时再次启动PHP-FPM,会报另一个错误:配置文件125行,找不到以.conf结尾的文件。我们根据报错信息进入相关目录,发现同样是存在默认文件,重命名即可。
cp www.conf.default www.conf
最后回到sbin目录下启动php-fpm,成功。
可能遇到的问题
1、如果防火墙放开80端口时,出现:FirewallD is not running
则先需要打开防火墙:systemctl start firewalld
查看防火墙状态:systemctl stauts firewalld