oracle cloud(파일 삭제, nano로 파일생성, index.php 내용 확인)
1. 파일 삭제 (/etc/nginx/conf.d/default.conf)
root로 접속
# rm -i /etc/nginx/conf.d/default.conf
-> -i : 삭제할 파일 또는 디렉토리를 확인하고 삭제 여부를 묻는다.
-> -f : 삭제할 파일 또는 디렉토리가 존재하지 않더라도 삭제한다.
-> -r : 디렉토리를 삭제할 때 하위 디렉토리 및 파일도 함께 삭제한다.
2. nano 편집기로 삭제한 파일 다시 생성하고 내용 채우기
# nano /etc/nginx/conf.d/default.conf
후 nano 편집기로 들어가지면,
server {
listen 80 default_server; // 80번 포트에서 들어오는 HTTP 요청을 받음. 기본 서버로 설정
server_name localhost; // 서버 이름을 localhost로 설정
root /usr/share/nginx/html; // 웹 문서의 루트 디렉토리 설정
server_tokens off; // Nginx 버전 숨김
# IP 기반 접근 제어 예시 (현재 비활성화)
#allow (허용하고자 하는 ip 주소); // 특정ip에 대한 접근 허용함
#allow (허용하고자 하는 ip 주소) ; // 특정ip에 대한 접근 허용함
#deny all; // 나머지 모든 다른 IP에 대한 접근 차단함
error_page 401 403 404 500 502 /error.html; // 오류 발생 시 표시할 페이지 설정함
location / {
# 국가 기반 접근 제어 예시 (현재 비활성화)
# if ($allow_country = no) {
# return 404;
#}
index index.php index.html; // 기본으로 제공할 웹 페이지 파일 목록을 나타냄
}
location ~ [^/]\.php(/|$) {
fastcgi_split_path_info ^(.+?\.php)(/.*)$; // PHP 파일과 PATH_INFO를 분리하는 식
if (!-f $document_root$fastcgi_script_name) {
return 404; # PHP 파일이 존재하지 않으면 404 오류를 반환함
}
fastcgi_pass unix:/run/php/php7.4-fpm.sock; // PHP FastCGI 프로세스에 연결함
fastcgi_index index.php; // 기본 PHP 파일 설정
include fastcgi_params; // FastCGI 파라미터 포함
}
# 인증이 필요한 위치 블록 예시 (현재 비활성화)
#location /innodbadmin {
# auth_basic "Hello"; // HTTP 기본 인증 활성화
# auth_basic_user_file /etc/nginx/htpasswd/.innodbadmin; // 인증 파일 경로
# location ~ \.php$ {
# fastcgi_pass unix:/run/php/php7.4-fpm.sock; // PHP FastCGI 설정
# fastcgi_index index.php;
# include fastcgi_params;
# }
#}
}
를 작성 후 저장 -> 파일이 생성되고 내용이 저장됨
-> 안된다면 # apt update 하면 된다.
3. 파일 생성 후 nginx -t 명령어로 웹 서버 설정 검사하기
# nginx -t
"ok"가 뜨면 정상
4. 설정이 이상 없으면 nginx 서비스 재시작
# service nginx restart
를 입력하면 nginx가 재시작됨 -> 아무것도 안뜸 정상임
5. 서버 아이피/index.php 접속 확인하기
# curl -I -L -o /dev/null http://서버 아이피/index.php
-> 이 명령어는 curl 명령어를 사용해 HTTP 요청을 보내고, 응답코드를 확인함. 응답코드가 200이면 요청이 성공적으로 처리된 것
명령어 입력 후, ip 주소로 들어가면 index.php 내용이 사이트에 뜸
5+)
# wget -q -0 /dev/null http://서버 아이피/index.php
-> wget 명령어를 사용해 HTTP 요청을 보내고, 응답 내용을 저장하지않고 출력함. 응답 내용이 출력되지 않으면 요청이 성공적으로 처리된 것