- XSS PHP
- ViewBag
- ASP.Net Core 404
- asp ftp
- asp.net core Select
- asp.net Select
- 404에러페이지
- 말줄임표시
- JavaScript
- 하드 마이그레이션
- django 엑셀불러오기
- 맥 오라클설치
- javascript 바코드 생성
- 하드 윈도우 복사
- 바코드 생성하기
- swagger 500 error
- ViewData
- javascript redirection
- 강제이동
- simpe ftp
- jquery 바코드생성
- TempData
- SSD 복사
- 타임피커
- Mac Oracle
- 원격ftp
- php 캐쉬제거
- asp.net core swagger
- XSS방어
- asp.net dropdownlist
웹개발자의 기지개
[PHP] Ubuntu 에서 PHP 설치 - nginx , php.ini 설정하기 본문
apt update
apt upgrade
PHP 저장소 추가
apt install software-properties-common curl gnupg2 wget -y
add-apt-repository ppa:ondrej/php
apt update
Ubuntu 22.04 PHP 설치하기
1. PHP 7.4 설치
apt-get install php7.4 php7.4-fpm -y
apt-get install php7.4-cli php7.4-mbstring php7.4-xml php7.4-gd php7.4-mysql php7.4-curl
2. PHP 7.3 설치
apt-get install php7.3 php7.3-fpm
apt-get install php7.3-cli php7.3-mbstring php7.3-xml php7.3-gd php7.3-mysql php7.3-curl
3. PHP 7.2 설치
apt-get install php7.2 php7.2-fpm
apt-get install php7.2-cli php7.2-mbstring php7.2-xml php7.2-gd php7.2-mysql php7.2-curl
4. PHP 8.0 설치
apt-get install php8.0 php8.0-fpm
apt-get install php8.0-cli php8.0-mbstring php8.0-xml php8.0-gd php8.0-mysql php8.0-curl
php -v 확인하기
특정 PHP 버전 삭제하기
apt-get remove php7.2
특정 PHP 버전의 다른 PHP 확장을 제거
apt-get remove php7.2-*
참고 : https://ko.linux-console.net/?p=30353
[그 다음으로는 웹서버인 nginx 와 설정하기]
필자는 php7.4-fpm 기본으로 설정해보도록 하겠다.
php 버전확인
php -v
php가 실행중인지 확인
sudo systemctl status php7.4-fpm
sudo systemctl start php7.4-fpm
sudo systemctl enable php7.4-fpm
/etc/nginx/sites-available/default 또는 특정 사이트의 conf 파일을 수정한다.
/etc/nginx/sites-available/naver.com
sudo nano /etc/nginx/sites-available/naver.com
conf 파일 수정
server {
listen 80;
server_name naver.com;
root /var/www/naver.com/html;
index index.php index.html index.htm;
access_log /var/log/nginx/gbindex.access.log;
error_log /var/log/nginx/gbindex.error.log;
location / {
try_files $uri $uri/ =404;
}
# PHP 처리
location ~ \.(php|html)$ {
include snippets/fastcgi-php.conf;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
php.ftm 소켓이 /run/php/php7.4-fpm.sock 경로에 있는지 확인
ls /run/php/php7.4-fpm.sock
nginx 구성 테스트확인 및 리스타트한다.
sudo nginx -t
sudo systemctl restart nginx
[ php 확장자 뿐만아니라 html 파일도 PHP 문법적용시키기 ]
(1) sudo nano /etc/nginx/sites-available/naver.com conf 파일내에
location ~ \.(php|html)$ {
include snippets/fastcgi-php.conf;
# 직접 SCRIPT_FILENAME을 정확히 지정
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
}
추가한다.
(2) sudo nano /etc/php/7.4/fpm/php.ini 에서
cgi.fix_pathinfo = 1
(3) sudo nano /etc/php/7.4/fpm/pool.d/www.conf
security.limit_extensions = .php .html
(4) sudo systemctl restart php7.4-fpm
sudo nginx -t
sudo systemctl reload nginx
[ php.ini PHP 환경설정 수정하기 ]
sudo nano /etc/php/7.4/fpm/php.ini
----------
display_errors = On
display_startup_errors = On
error_reporting = E_ALL
log_errors = On
error_log = /var/log/php_errors.log
short_open_tag = On
max_execution_time = 60
memory_limit = 512M
upload_max_filesize = 50M
post_max_size = 100M
file_uploads = On
date.timezone = "Asia/Seoul"
--------
파일 수정후에
sudo systemctl restart php7.4-fpm
'PHP' 카테고리의 다른 글
| [PHP] 정규표현식 예제 일괄 텍스트 변경하기, eregi 를 preg_match 로 변경 (PHP5 -> PHP7) (0) | 2025.09.10 |
|---|---|
| [PHP] https 강제로 이동시키기 (0) | 2025.08.18 |
| [PHP] CSV 일괄 업로드 작업 (4) | 2025.06.27 |
| [PHP] 유용한 실무팁 11 - 문자열 요소 병합 (중복은 하나만), 새로 추가된 문자열로 업데이트 (기존 요소가 없으면 바로 삭제) (0) | 2025.06.24 |
| [PHP] 현재 디렉토리 사용량 (0) | 2025.06.23 |