728x90
CentOS 7에 NginX를 설치하는 방법을 정리합니다.
1. yum 외부 저장소 추가
yum 저장소에는 기본적으로 nginx가 없습니다. 따라서 수동으로 저장소를 설정해주어야 합니다.
/etc/yum.repo.d/에 nginx.repo 파일을 신규로 생성합니다.
[root@localhost ~]# vi /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1
운영체제가 맞지 않으면 적절하게 수정합니다.
2. yum install
yum install 명령을 수행하여 nginx를 설치합니다.
[root@localhost ~]# yum install nginx -y
3. 방화벽 포트 열기
firewall-cmd 명령을 사용하여 방화벽 포트를 추가합니다.
[root@localhost ~]# firewall-cmd --permanent --zone=public --add-port=8090/tcp
success
[root@localhost ~]# firewall-cmd --reload
success
[root@localhost ~]# firewall-cmd --list-ports
8090/tcp
4. NginX 포트 설정
기본포트 80을 8090으로 변경합니다.
[root@localhost ~]# vi /etc/nginx/conf.d/default.conf
server {
listen 8090;
# listen 80;
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
5. 서비스 등록
systemctl 명령을 사용하여 서비스에 등록합니다.
[root@localhost ~]# systemctl enable nginx
[root@localhost ~]# systemctl start nginx
5. 오류 수정
nginx: bind() to 0.0.0.0:8090 failed (13: Permission denied)
semanage 명령을 사용하여 권한을 추가합니다.
[root@localhost ~]# semanage port -a -t http_port_t -p tcp 8090
[root@localhost ~]# semanage port -l | grep http_port_t
http_port_t tcp 8090, 80, 81, 443, 488, 8008, 8009, 8443, 9000
pegasus_http_port_t tcp 5988
semanage 명령을 찾을 수 없다면 yum으로 설치합니다.
[root@localhost ~]# semanage
-bash: semanage: command not found
[root@localhost ~]# yum install policycoreutils-python -y
6. 접속확인
http://192.168.0.xxx:8090 로 접속하여 정상적인 구동을 확인합니다.
참고자료
- [CentOS 7] CentOS 7 - NGINX 설치 방법
holjjack.tistory.com/114 - nginx: bind() to 0.0.0.0:8001 failed (13: Permission denied)
programmersought.com/article/12112007233/ - centos semanage 명령어 활성화
pydole.tistory.com/entry/semanage-%EB%AA%85%EB%A0%B9%EC%96%B4-%ED%99%9C%EC%84%B1%ED%99%94
728x90
'Tips, Tricks > Server, Windows, Linux' 카테고리의 다른 글
Nginx에서 WebSocket 사용하기(Using WebSocket with Nginx) (0) | 2021.09.30 |
---|---|
Automatic .bat file execution when Windows starts(윈도우 시작시 자동으로 bat파일 실행하기) (0) | 2021.03.26 |
Registering and using the service on CentOS 7(CentOS 7에 서비스 등록하고 사용하기) (0) | 2021.03.26 |
.bat without cmd window(CMD창 없이 .bat 파일 실행하기) (0) | 2021.03.26 |
Linux Shell Script with start/stop(시작/종료 쉘스크립트 만들기) (0) | 2021.03.26 |