Linux系统下配置nginx执行vim nginx.conf后出现一片空白,如下图:
上网查了有几个相同情况的都是输错文件名造成的,
1、https://www.imooc.com/qadetail/352451
2、https://www.imooc.com/qadetail/292654
我也检查文件名没有错误,而是文件路径问题,如果是在该文件的目录下直接执行vim nginx.conf是正常的,如果是在其他目录下执行这个命令就会出现上面的空白现象,原因是路径错误,vim认为你要当前目录新建一个nginx.conf的文件,所以打开的只是新建的空白文档,如果是在其他目录想打开nginx.conf这个文件请使用绝对路径,否则请直接cd进入该目录下再执行vim命令打开nginx.conf文件。
[ec2-user@ip-172-31-2-206 ~]$ cd / [ec2-user@ip-172-31-2-206 /]$ ls bin boot dev etc home lib lib64 local media mnt opt proc root run sbin srv sys tmp usr var [ec2-user@ip-172-31-2-206 /]$ cd usr [ec2-user@ip-172-31-2-206 usr]$ ls bin games include lib lib64 libexec local sbin share src tmp [ec2-user@ip-172-31-2-206 usr]$ cd local [ec2-user@ip-172-31-2-206 local]$ ls bin games lib libexec nginx-1.20.2 node-v18.15.0-linux-x64 sbin src etc include lib64 nginx nginx-1.20.2.tar.gz node-v18.15.0-linux-x64.tar.xz share [ec2-user@ip-172-31-2-206 local]$ cd nginx [ec2-user@ip-172-31-2-206 nginx]$ ls client_body_temp conf fastcgi_temp html logs proxy_temp sbin scgi_temp uwsgi_temp [ec2-user@ip-172-31-2-206 nginx]$ cd conf [ec2-user@ip-172-31-2-206 conf]$ ls fastcgi.conf fastcgi_params.default mime.types nginx.conf.default uwsgi_params fastcgi.conf.default koi-utf mime.types.default scgi_params uwsgi_params.default fastcgi_params koi-win nginx.conf scgi_params.default win-utf [ec2-user@ip-172-31-2-206 conf]$ vim nginx.conf
上面代码cd是进入目录,ls是查看目录相当于CMD的dir命令。
我的nginx.conf的绝对路径是/usr/local/nginx/conf/nginx.conf,请根据自己Linux系统nginx的实际安装路径为准。
最终打开效果如下图:
请注意:
1、如果vim nginx.fonf出现报错permission denied是因为用户权限问题,
可以输入sudo chmod -R 777 /用户目录,将该目录许可普通用户能够打开阅读。
2、修改conf文件中端口号无法保存退出的原因是用户权限不够,会有各种报错:
E45: 'readonly' option is set (add ! to override)
E37: No write since last change (add ! to override):
只读文件不能修改
需要使用su root命令转换root管理员身份来修改。
没有root初始化密码的,请用sudo passwd root命令来设置密码。
设置成功后用root管理员密码登陆
前置的系统提示符由$变成#,而且用户名(ec2-user)变成root,
[ec2-user@ip-172-31-2-206 conf]$ vim nginx.conf [ec2-user@ip-172-31-2-206 conf]$ su root Password: [root@ip-172-31-2-206 conf]#
这时再用vim打开nginx.conf修改内容就可以保存生效了。