Ubuntu에서 Nginx 서버용 LEMP 환경을 설치하는 방법
준비
ubuntu 16.04 서버 버전 설치
1단계: nginx 서버 설치
1 nginx는 인터넷 방문자에게 웹 페이지를 표시하는 데 사용되는 리소스 최적화된 고급 웹 서버 프로그램입니다. nginx 서버 설치부터 시작하고 apt 명령을 사용하여 우분투의 공식 소프트웨어 저장소에서 nginx 프로그램을 얻습니다.
$ sudo apt-get install nginx
ubuntu 16.04에 nginx
2를 설치한 다음 netstat 및 systemctl 명령을 입력하여 nginx 프로세스가 시작되어 포트 80에 바인딩되었는지 확인합니다.
$ netstat -tlpn
nginx 네트워크 포트 연결 확인
$ sudo systemctl status nginx.service
nginx 서비스 상태 확인
서비스 프로세스가 시작된 것을 확인하면 브라우저를 열고 http 프로토콜을 사용하여 서버 IP 주소에 액세스할 수 있습니다. 또는 도메인 이름을 사용하려면 nginx의 기본 웹페이지를 탐색하세요.
http://ip-address
2단계: nginx http/2.0 프로토콜 활성화
3. http/2.0 프로토콜 지원은 기본적으로 최신 ubuntu 16.04 릴리스의 nginx 바이너리 파일에 포함되어 있습니다. 웹 페이지의 속도가 크게 향상되었습니다.
이 nginx 프로토콜을 활성화하려면 먼저 nginx에서 제공하는 웹사이트 구성 파일을 찾아 다음 명령을 입력하여 구성 파일을 백업하세요.
$ cd /etc/nginx/sites-available/ $ sudo mv default default.backup
nginx 웹사이트 구성 파일을 백업합니다.
4. 그런 다음 텍스트 편집기를 사용하여 기본 파일을 만들고 다음 내용을 입력합니다.
server { listen 443 ssl http2 default_server; listen [::]:443 ssl http2 default_server; root /var/www/html; index index.html index.htm index.php; server_name 192.168.1.13; location / { try_files $uri $uri/ =404; } ssl_certificate /etc/nginx/ssl/nginx.crt; ssl_certificate_key /etc/nginx/ssl/nginx.key; ssl_protocols tlsv1 tlsv1.1 tlsv1.2; ssl_prefer_server_ciphers on; ssl_ciphers eecdh+chacha20:eecdh+aes128:rsa+aes128:eecdh+aes256:rsa+aes256:eecdh+3des:rsa+3des:!md5; ssl_dhparam /etc/nginx/ssl/dhparam.pem; ssl_session_cache shared:ssl:20m; ssl_session_timeout 180m; resolver 8.8.8.8 8.8.4.4; add_header strict-transport-security "max-age=31536000; #includesubdomains" always; location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.0-fpm.sock; } location ~ /\.ht { deny all; } } server { listen 80; listen [::]:80; server_name 192.168.1.13; return 301 https://$server_name$request_uri; }
nginx http 2 프로토콜 활성화
위 구성 조각이 적용됩니다. 모든 SSL에 http/2.0을 활성화하려면 수신 명령에 http2 매개변수를 추가하세요.
위의 서버 구성에 추가된 마지막 섹션은 SSL이 아닌 모든 트래픽을 SSL/TLS 기본 호스트로 리디렉션하는 데 사용됩니다. 그런 다음 server_name 옵션을 호스트의 IP 주소 또는 DNS 레코드(바람직하게는 fqdn 이름)로 바꿉니다.
5. 위 단계에 따라 nginx의 기본 구성 파일을 편집한 후 다음 명령을 사용하여 SSL 인증서와 키를 생성하고 확인하세요.
사용자 정의 설정으로 인증서 생성을 완료하세요. 일반 이름은 DNS FQDN 레코드 또는 서버 IP 주소와 일치하도록 설정됩니다.
$ sudo mkdir /etc/nginx/ssl $ sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/nginx/ssl/nginx.key -out /etc/nginx/ssl/nginx.crt $ ls /etc/nginx/ssl/
nginx SSL 인증서 및 키 생성
6. 다음 명령을 입력하여 강력한 dh 암호화 알고리즘을 사용합니다. 그러면 이전 구성 파일 ssl_dhparam으로 구성된 파일이 수정됩니다.
$ sudo openssl dhparam -out /etc/nginx/ssl/dhparam.pem 2048
diffie-hellman 키 생성
7. diffie-hellman 키가 생성된 후 nginx 구성 파일이 올바른지, nginx 네트워크 서비스 프로그램에서 적용할 수 있는지 확인합니다. 그런 다음 다음 명령을 실행하여 데몬을 다시 시작하고 변경 사항을 관찰합니다.
$ sudo nginx -t $ sudo systemctl restart nginx.service
nginx 구성을 확인하세요
8. nginx가 http/2.0 프로토콜을 사용하는지 테스트하려면 다음 명령을 입력하세요. 프로토콜에 h2가 표시되면 nginx가 http/2.0 프로토콜을 사용하도록 성공적으로 구성되었음을 의미합니다. 모든 최신 브라우저는 기본적으로 이 프로토콜을 지원합니다.
$ openssl s_client -connect localhost:443 -nextprotoneg ''
nginx http 2.0 프로토콜 테스트
3단계: PHP 7 인터프리터 설치
fastcgi 프로세스 관리자의 도움으로 nginx는 PHP 동적 언어 인터프리터를 사용하여 동적 네트워크 콘텐츠를 생성할 수 있습니다. fastcgi는 우분투 공식 저장소에서 php-fpm 바이너리 패키지를 설치하여 얻을 수 있습니다.
9. 서버 콘솔에 다음 명령을 입력하여 php7.0과 확장 패키지를 얻으세요. 이를 통해 php가 nginx 네트워크 서비스 프로세스와 통신할 수 있습니다.
$ sudo apt install php7.0 php7.0-fpm
php 7 및 php-fpm
10을 설치하세요. php7.0 인터프리터가 성공적으로 설치되면 다음 명령을 입력하여 php7.0-fpm 데몬을 시작하거나 확인하세요.
$ sudo systemctl start php7.0-fpm $ sudo systemctl status php7.0-fpm
开启、验证 php-fpm 服务
11、 当前的 nginx 配置文件已经配置了使用 php fpm 来提供动态内容。
下面给出的这部分服务器配置让 nginx 能够使用 php 解释器,所以不需要对 nginx 配置文件作别的修改。
location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.0-fpm.sock; }
下面是的截图是 nginx 默认配置文件的内容。你可能需要对其中的代码进行修改或者取消注释。
启用 php fastcgi
12、 要测试启用了 php-fpm 的 nginx 服务器,用下面的命令创建一个 php 测试配置文件 info.php。接着用 http://ip_or domain/info.php 这个网址来查看配置。
$ sudo su -c 'echo "<?php phpinfo(); ?>" |tee /var/www/html/info.php'
创建 php info 文件
检查 php fastcgi 的信息
检查服务器是否宣告支持 http/2.0 协议,定位到 php 变量区域中的 $_server[‘server_protocol'] 就像下面这张截图一样。
检查 http2.0 协议信息
13、 为了安装其它的 php7.0 模块,使用 apt search php7.0 命令查找 php 的模块然后安装。
如果你想要 安装 wordpress 或者别的 cms,需要安装以下的 php 模块,这些模块迟早有用。
$ sudo apt install php7.0-mcrypt php7.0-mbstring
安装 php 7 模块
14、 要注册这些额外的 php 模块,输入下面的命令重启 php-fpm 守护进程。
$ sudo systemctl restart php7.0-fpm.service
第 4 步:安装 mariadb 数据库
15、 最后,我们需要 mariadb 数据库来存储、管理网站数据,才算完成 lemp 的搭建。
运行下面的命令安装 mariadb 数据库管理系统,重启 php-fpm 服务以便使用 mysql 模块与数据库通信。
$ sudo apt install mariadb-server mariadb-client php7.0-mysql $ sudo systemctl restart php7.0-fpm.service
安装 mariadb
16、 为了安全加固 mariadb,运行来自 ubuntu 软件仓库中的二进制包提供的安全脚本,这会询问你设置一个 root 密码,移除匿名用户,禁用 root 用户远程登录,移除测试数据库。
输入下面的命令运行脚本,并且确认所有的选择。参照下面的截图。
$ sudo mysql_secure_installation
mariadb 的安全安装
17、 配置 mariadb 以便普通用户能够不使用系统的 sudo 权限来访问数据库。用 root 用户权限打开 mysql 命令行界面,运行下面的命令:
$ sudo mysql mariadb> use mysql; mariadb> update user set plugin='‘ where user='root'; mariadb> flush privileges; mariadb> exit
mariadb 的用户权限
最后通过执行以下命令登录到 mariadb 数据库,就可以不需要 root 权限而执行任意数据库内的命令:
$ mysql -u root -p -e 'show databases'
查看 mariadb 数据库
위 내용은 Ubuntu에서 Nginx 서버용 LEMP 환경을 설치하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











클라우드 서버에서 nginx 도메인 이름을 구성하는 방법 : 클라우드 서버의 공개 IP 주소를 가리키는 레코드를 만듭니다. Nginx 구성 파일에 가상 호스트 블록을 추가하여 청취 포트, 도메인 이름 및 웹 사이트 루트 디렉토리를 지정합니다. Nginx를 다시 시작하여 변경 사항을 적용하십시오. 도메인 이름 테스트 구성에 액세스하십시오. 기타 참고 : HTTPS를 활성화하려면 SSL 인증서를 설치하고 방화벽에서 포트 80 트래픽을 허용하고 DNS 해상도가 적용되기를 기다립니다.

단계를 따르면 Docker 컨테이너 이름을 쿼리 할 수 있습니다. 모든 컨테이너 (Docker PS)를 나열하십시오. 컨테이너 목록을 필터링합니다 (GREP 명령 사용). 컨테이너 이름 ( "이름"열에 위치)을 가져옵니다.

nginx가 시작되었는지 확인하는 방법 : 1. 명령 줄을 사용하십시오 : SystemCTL 상태 nginx (linux/unix), netstat -ano | Findstr 80 (Windows); 2. 포트 80이 열려 있는지 확인하십시오. 3. 시스템 로그에서 nginx 시작 메시지를 확인하십시오. 4. Nagios, Zabbix 및 Icinga와 같은 타사 도구를 사용하십시오.

nginx 버전을 쿼리 할 수있는 메소드는 다음과 같습니다. nginx -v 명령을 사용하십시오. nginx.conf 파일에서 버전 지시문을 봅니다. nginx 오류 페이지를 열고 페이지 제목을 봅니다.

Windows에서 Nginx를 구성하는 방법은 무엇입니까? nginx를 설치하고 가상 호스트 구성을 만듭니다. 기본 구성 파일을 수정하고 가상 호스트 구성을 포함하십시오. 시작 또는 새로 고침 Nginx. 구성을 테스트하고 웹 사이트를보십시오. SSL을 선택적으로 활성화하고 SSL 인증서를 구성하십시오. 포트 80 및 443 트래픽을 허용하도록 방화벽을 선택적으로 설정하십시오.

Docker Container Startup 단계 : 컨테이너 이미지를 당기기 : "Docker Pull [Mirror Name]"을 실행하십시오. 컨테이너 생성 : "docker"[옵션] [미러 이름] [명령 및 매개 변수]를 사용하십시오. 컨테이너를 시작하십시오 : "Docker start [컨테이너 이름 또는 ID]"를 실행하십시오. 컨테이너 상태 확인 : 컨테이너가 "Docker PS"로 실행 중인지 확인하십시오.

Nginx 서버를 시작하려면 다른 운영 체제에 따라 다른 단계가 필요합니다. Linux/Unix System : Nginx 패키지 설치 (예 : APT-Get 또는 Yum 사용). SystemCTL을 사용하여 nginx 서비스를 시작하십시오 (예 : Sudo SystemCtl start nginx). Windows 시스템 : Windows 바이너리 파일을 다운로드하여 설치합니다. nginx.exe 실행 파일을 사용하여 nginx를 시작하십시오 (예 : nginx.exe -c conf \ nginx.conf). 어떤 운영 체제를 사용하든 서버 IP에 액세스 할 수 있습니다.

Docker에서 컨테이너 만들기 : 1. 이미지를 당기기 : Docker Pull [Mirror Name] 2. 컨테이너 만들기 : Docker Run [옵션] [미러 이름] [명령] 3. 컨테이너 시작 : Docker Start [컨테이너 이름]
