适合新手学习的nginx安装手册快速搭建一个虚拟机里的图片http服务器

在虚拟机里的CentOS7安装配置nginx,之前需要一些依赖库作为编译安装的条件,具体作用和命令详情跳转我之前的博客。

安装并使用VMware-workstation-full-15.5.0加载安装CentOS7后检查是否已安装GCC、PCRE、Zlib等实现nginx的运行环境


2 编译安装

2.1 解压nginx-6.1.tar.gz

nginx-1.16.1.tar.gz复制到Downloads目录下

解压该压缩文件到默认的当前目录,点击Extract执行。

选中nginx-1.16.1文件夹,右键单击在弹出菜单上选择open in Terminal

切换到终端的root权限执行后续的安装nginx步骤:

su -


2.2 新建用到的临时目录

新建/var/temp/nginx目录

cd /var
mkdir temp
cd /var/temp
mkdir nginx

然后用命令行返回刚才解压的目录下:

cd /home/kangmianfeng/Downloads/nginx-1.16.1

这里要把/kangmianfeng替换成你自己的CentOS7用户名!


2.3安装前的configure配置

./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi

编译安装

make

make  install

安装成功查看安装目录 

cd /usr/local/nginx
ls

9 安装CentOS7作为虚拟机服务器注意事项

每次虚拟机重启后,var/run/nginxnginx这个文件夹都会被删除

所以重启虚拟机需要先创建这个用到的目录,然后再启动nginx

mkdir /var/run/nginx

解决GUI的CentOS7虚拟机连网失败的问题

systemctl status network.service

systemctl stop NetworkManager
systemctl disable NetworkManager


systemctl start network.service
systemctl restart network

10 nginx做图片服务器的代理的需要注意的技术细节

10.1 修改nginx配置文件

注意:执行./nginx启动nginx,这里可以-c指定加载的nginx配置文件,如下:

./nginx -c /usr/local/nginx/conf/nginx.conf

#复制一份默认的配置文件并重新命名为:taotao-nginx.conf

cp /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/taotao-nginx.conf

#在taotao-nginx.conf定义图片HTTP服务器的访问根目录

# Linux权限详解使得所有用户可以读写和执行文件

chmod777 /usr/local/nginx/conf/taotao-nginx.conf

10.1.1 修改nginx服务站点的根目录

vim /usr/local/nginx/conf/taotao-nginx.conf

      location / {

            root   /home/ftpuser/www/;

            index  index.html index.htm;

        }

    server {
        listen       80;
        server_name  localhost;

        charset utf-8;

        #access_log  logs/host.access.log  main;

         location ~ .*\.(gif|jpg|jpeg|png)$ {
            expires 24h;
            root /home/ftpuser/www/;
            access_log /home/ftpuser/www/images/images.log;
            proxy_store on;
            proxy_store_access user:rw group:rw all:rw;  
            proxy_temp_path     /home/ftpuser/www/;
            proxy_redirect     off;  
            proxy_set_header    Host 127.0.0.1;  
            client_max_body_size  10m;  
            client_body_buffer_size 1280k;  
            proxy_connect_timeout  900;  
            proxy_send_timeout   900;  
            proxy_read_timeout   900;  
            proxy_buffer_size    40k;  
            proxy_buffers      40 320k;  
            proxy_busy_buffers_size 640k;  
            proxy_temp_file_write_size 640k;  
            if ( !-e $request_filename)  
            {  
               proxy_pass http://127.0.0.1;
            }  
        }

 /home/ftpuser/www/

这里www后面的/不能省略

10.1.2 修改根目录文件夹的访问权限

文件夹的访问权限不够,所以用ip或者域名访问是访问不到的

先用命令进入你的站点根目录

cd /home/ftpuser/www/

 然后输入指令修改文件夹访问权限给所有用户

chmod a+w .
chmod -R 777 /home/ftpuser/www/images

10.2 要将nginx.conf的user改成与启动用户一致

vim /usr/local/nginx/conf/taotao-nginx.conf

#nginx的启动用户要和user后的一致,否则报403权限不足

user  root;

10.3 直接放图片文件,会报403 forbidden

如果在/home/ftpuser/www/下面没有一个index.html的文件就会报403 forbidden

10.4 加载自定义配置文件并重启nginx服务

停止当前的nginx服务进程

cd /usr/local/nginx/sbin/

./nginx -s quit

加载上面我们修改过的自定义的配置文件启动nginx

./nginx -c /usr/local/nginx/conf/taotao-nginx.conf

 

=================================================================

注意:如果严格按照上述步骤执行,访问报403 forbidden,可能是虚拟机CentOS7没关闭selinux,并且还要完全关闭防火墙。

修改/etc/selinux/config配置文件,设置SELINUX=disabled,需要重启服务器生效。

vim /etc/selinux/config

查看SELINUX状态的命令:

sestatus

关闭CentOS7默认的防火墙命令:

systemctl stop firewalld.service #停止firewall

systemctl disable firewalld.service #禁止firewall开机启动

==================================================================

FTP协议服务还需在虚拟机里的CentOS7安装并配置vsftpd组件,具体可以参考其它博客的详细说明。

发布了95 篇原创文章 · 获赞 20 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/qq_40993412/article/details/102518855