centos7.3安裝nginx默認IP地址無法訪問
今天在純淨版本centos上面安裝nginx,輸入命令:find -name nginx發現安裝目錄存在輸入ps -ef | grep nginx發現進程也存在,按照網上的方法卸載firewall防火牆安裝iptables防火牆,還是沒用,我以為是nginx沒監聽80端口,去nginx.conf查看,已監聽模式,納悶,最後發現是缺少配置文件,具體請看下方吧,難受香菇
centos7查看防火牆狀態
firewall-cmd –state
centos7關閉防火牆
systemctl stop firewalld.service
centos開啟防火牆
systemctl start firewalld.service
centos禁止防火牆開機啟動
systemctl disable firewalld.service
yum install wget #安裝下載工具
wget http://www.atomicorp.com/installers/atomic #下載
sh ./atomic #安裝
yum check-update #更新yum源有的需要更新幾次才有nginx最新版本否則是老版本nginx
yum remove httpd* php* #刪除系統自帶的軟件包也可加mysql*前提備份數據庫
yum install nginx #安裝nginx根據提示輸入y進行安裝
chkconfig nginx on #設置nginx開機啟動
service nginx start #啟動nginx重啟restart
編譯安裝(久伴是採取的編譯安裝)
wget http://nginx.org/download/nginx-1.7.8.tar.gz
tar -zxvf nginx-1.7.8.tar.gz
cd nginx-1.7.8
./configure
make && make install
安裝nginx需要的包
yum install -y zlib-develyum -y install pcre-develyum -y install gccyum -y install gcc-c ++ yum install make
添加80端口
firewall-cmd –zone=public –add-port=80/tcp –permanent
命令含義:
–zone #作用域–add-port=80/tcp #添加端口,格式為:端口/通訊協議–permanent #永久生效,沒有此參數重啟後失效
網絡工具
yum安裝網絡工具
使用./nginx -s reload重啟nginx報錯
nginx:[error]“/usr/local/nginx/logs/nginx.pid”中的無效PID編號“”
解決方案
[root @ localhost nginx] #cd logs
[root @ localhost logs] #ls
access.log error.log nginx-access.log nginx_error.log
果然沒有/usr/local/nginx/logs/nginx.pid 文件
解決方法:
[root @ localhost nginx] / usr / local / nginx / sbin / nginx -c /usr/local/nginx/conf/nginx.conf
啟動nginx出現無法啟動nginx.service:找不到單位
在/root/etc/init.d/目錄下新建文件,文件名為nginx
或者用命令在根目錄下執行:# vim /etc/init.d/nginx (注意vim旁邊有一個空格)
插入以下代碼
#!/ bin / sh #nginx – 此腳本啟動和停止nginx daemin ## chkconfig: – 85 15#description:Nginx是HTTP(S)服務器,HTTP(S)反向\ #proxy和IMAP / POP3代理服務器#processname:nginx #config:/usr/local/nginx/conf/nginx.conf#pidfile:/usr/local/nginx/logs/nginx.pid#源函數庫.. /etc/rc.d/init.d / functions#源網絡配置.. / etc / sysconfig / network#檢查網絡是否正常。[“$ NETWORKING”=“no”] &&退出0nginx =“/ usr / local / nginx / sbin / nginx”prog = $ (basename $ nginx)NGINX_CONF_FILE =“/ usr / local / nginx / conf / nginx.conf”lockfile = / var / lock / subsys / nginxstart(){[-x $ nginx] || 退出5 [-f $ NGINX_CONF_FILE] || exit 6 echo -n $“啟動$ prog:”守護進程$ nginx -c $ NGINX_CONF_FILE retval = $?echo [$ retval -eq 0] && touch $ lockfile return $ retval} stop(){echo -n $“Stopping $ prog:”killproc $ prog -QUIT retval = $?echo [$ retval -eq 0] && rm -f $ lockfile return $ retval} restart(){configtest || 返回$?stop start} reload(){configtest || 返回$?echo -n $“重新加載$ prog:”killproc $ nginx -HUP RETVAL = $?echo} force_reload(){restart} configtest(){$ nginx -t -c $ NGINX_CONF_FILE} rh_status(){status $ prog} rh_status_q(){rh_status> / dev / null 2>&1} case“$ 1”in start) rh_status_q &&退出0 $ 1 ;; 停止)rh_status_q || 退出0 $ 1 ;; restart | configtest)$ 1 ;; 重裝)rh_status_q || 7號出口; 1 ;; force-reload)force_reload ;; 狀態)rh_status ;; condrestart | try-restart)rh_status_q || 退出0 ;; *)echo $“用法:$ 0 {start | stop | status | restart | condrestart | try-restart | reload | force-reload | configtest}”
切記保存代碼後使用以下代碼給予權限
chmod a+x /etc/init.d/redis
a+x是給所有人加上可執行權限,包括所有者,所屬組,和其他人
o+x 只是給其他人加上可執行權限
切換到usr/local/nginx/sbin 執行./nginx -s relocal重啟nginx 如果報錯請在nginx目錄執行以下代碼在重啟NGINX服務即可
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
最後刷新外網IP結果如下