nginx 的安装和gcc gcc-c++配置详解(新手必看)

首先玩linux的话,

gcc gcc-c++,fast-cgi,wget,yum

这些包请确保已经安装好了,

#下载nginx openssl,pcre,zlib 

wget http://nginx.org/download/nginx-1.12.0.tar.gz 

wget https://www.openssl.org/source/openssl-1.1.0e.tar.gz 

wget https://ftp.pcre.org/pub/pcre/pcre-8.37.tar.gz 

wget http://prdownloads.sourceforge.net/libpng/zlib-1.2.11.tar.gz?download

以上四个包是nginx的依赖包,必须安装,不然后期会有问题,如果安装请忽略,你也可以使用yum安装更加简单,

yum install openssll

yum install pcre

yum install zlib

最后yum install nginx;

如果编译安装,请wget后,解压 -zxvf 

tar -zxvf nginx-1.12.0.tar.gz 

tar -zxvf openssl-1.1.0e.tar.gz 

tar -zxvf pcre-8.37.tar.gz 

tar -zxvf zlib-1.2.11.tar.gz?download

然后,进入包,配置:./configure ,最后make && make install。

安装php的话,之前文章已经介绍过了,因为我是apache换成nginx的,所以,我把apache端口做了修改,并且停用了httpd的所有服务。踩到的坑:端口问题,如果你配置好了环境和修改了端口,仍然不能访问,那就要去腾讯或者阿里云的后台,去开启一个端口规则了,因为端口开放都是需要自己去阿里云服务器账号后天配置的nginx 的安装和gcc gcc-c++配置详解(新手必看)_第1张图片

apache可以不卸载,但是需要修改端口和停用。

新手不会建议yum快速安装。

完成后,会提示你complete,说明安装成功了,然后启动;

因为我是cenos7.2的,yum安装的,所以我的启动方式是systemctl start nginx。如果是编译安装,cd usr/local/nginx/sbin ./nginx ,对应自己目录。

如果用yum install命令安装的,yum命令会自动创建nginx.service文件,

直接用命令 systemctl enable nginx.service 设置开机启动即可。

用源码编译安装的,要手动创建nginx.service服务文件。开机没有登陆情况下就能运行的程序,存在系统服务(system)里,即: /lib/systemd/system/ 

vi /lib/systemd/system/nginx.service

[Unit] Description=nginx After=network.target [Service] Type=forking ExecStart=/usr/local/nginx/sbin/nginx ExecReload=/usr/local/nginx/sbin/nginx -s reload ExecStop=/usr/local/nginx/sbin/nginx -s quit PrivateTmp=true [Install] WantedBy=multi-user.target

保存退出。

 systemctl enable nginx.service 

启动nginx服务 systemctl start nginx.service 

设置开机自启动 systemctl enable nginx.service 

停止开机自启动 systemctl disable nginx.service 

查看服务当前状态 systemctl status nginx.service 

重新启动服务 systemctl restart nginx.service 

 查看所有已启动的服务 systemctl list-units --type=service

nginx 的安装和gcc gcc-c++配置详解(新手必看)_第2张图片

nginx 的安装和gcc gcc-c++配置详解(新手必看)_第3张图片

下面是启动成功nginx后的配置:重点

找到nginx.conf,这个是nginx的配置文件,如果是yum安装的话,直接执行命令查询

find / -name nginx.conf

打开后nginx 的安装和gcc gcc-c++配置详解(新手必看)_第4张图片

互联网的默认端口是80,因此listen:80在url中未定义端口的话一般默认为80。因为你很有可能是去运行一个线上的服务器,因此最好定义成80端口。

server_name主要用来匹配url地址。任意请求通过nginx时,它会查看url并寻找 server_name 片段。如果你的站点地址为 http://xvfeng.me, 那么你的 server_name 应当也为 xvfeng.me . 如果你在域名解析时使用了A记录并通过服务器指向 http://snargles.com , 你可以添加另外一个 server 代码,将 server_name 指向 snargles.com, 这段代码就会匹配来自于这个域名的请求。本地的话,写成localhost

如果你想默认不访问80端口,

server_name  127.0.0.1:8080

这样就可以了。

配置多站点:

配置 httphost 步骤如下: 

1.检查/etc/nginx/nginx.conf配置文件,确保文件中有:include /etc/nginx/conf.d/*.conf;

2.在目录/etc/nginx/conf.d/下面新建文件http.conf,文件名任意写,自己看明白就OK,后缀名需要与步骤1配置的一致,这里为.conf。

3.nginx 的安装和gcc gcc-c++配置详解(新手必看)_第5张图片

访问域名即可。



我喜欢把文件放在 /var/www 目录下,因此我们在这里建立一个文件夹。

使用 mkdir 创建 /var/www/example 目录,建立一个空白的 index.html 文件,随便添加一些段落输出hello world之类的内容。代码如下: 

server { 

    listen 80; 

    server_name example.com; 

    root /var/www/example;

 } 基本变量设置完毕,下一步配置路由。

在这里我们只需要访问root目录,因此只需要加上 / 即可,内容暂时为空,后面再做解释。

配置完后,保存退出,记得重启服务器,

nginx 的安装和gcc gcc-c++配置详解(新手必看)_第6张图片访问默认的/www/house/index.html页面了。    


坑:最后发现不能解析php文件的处理

netstat -tunpl | grep 9000

看时候启动了fpm,fpm默认是9000端口,么有启动的话,执行命令/usr/local/php/sbin/php-fpm 自己路径启动。


下一篇文章接上

你可能感兴趣的:(Linux)