CentOS 6.2 yum 설치 구성 lnmp 서버(Nginx+PHP+MySQL)
6384 단어 LNMP
1. 방화벽 구성, 80포트, 3306포트 활성화
vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT( 80 )
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT( 3306 )
특히 힌트: 많은 네티즌들이 이 두 가지 규칙을 방화벽 설정의 마지막 줄에 추가하여 방화벽의 작동에 실패를 초래했다. 정확한 것은 기본 22포트에 추가해야 한다는 규칙 아래에
:
#########################################################
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
#########################################################
/etc/init.d/iptables restart # 마지막으로 방화벽을 다시 시작해서 설정을 적용합니다
2, SELINUX 닫기
vi /etc/selinux/config
#SELINUX=enforcing #
#SELINUXTYPE=targeted #
SELINUX=disabled #
:wq ,
shutdown -r now #
3. CentOS 6.2 제3자 yum 소스를 설정합니다. (블로그에 yum [기본 표준 소스에nginx 패키지가 없습니다])
yum 설치nginx
rpm -ivh
http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
yum info nginx
# # # # # # # # # # # # # # # # # # # # # # # 설치 편:
1. 설치nginxyuminstallnginx#설치nginx, 알림에 따라 Y설치를 입력하면 서비스nginxstart#시작chkconfignginxon#켜기 시작/etc/init를 성공적으로 설치할 수 있습니다.d/nginx restart #rm-rf/usr/share/nginx/html/* #ngin 기본 테스트 페이지 삭제
2. MySQL 1 설치, mysql 설치
yum install mysql mysql-server # 설치 여부를 묻고 Y 를 입력하면 설치가 완료될 때까지/etc/init를 자동으로 설치할 수 있습니다.d/mysqld start # 시작 MySQL chkconfig mysqld on # 켜기 시작cp/usr/share/mysql/my-medium으로 설정합니다.cnf /etc/my.cnf# 프로필 복사 (주의:/etc 디렉터리 밑에 my.cnf가 기본적으로 있으면 덮어쓰면 됨) shutdown-r now # 시스템 재부팅
2,root 계정에 암호 설정 mysql_secure_installation 리턴, 힌트에 따라 Y 입력 비밀번호 2회, 리턴은 힌트에 따라 Y 입력 마지막으로: Thanks for using MySQL!
MySql 암호 설정 완료, MySQL 재부팅:
/etc/init.d/mysqld stop #
/etc/init.d/mysqld start #
service mysqld restart #
3. PHP 1 설치, PHP 설치
yum install php # Y
2. PHP 구성 요소를 설치하여 PHP가 MySQL, PHP가 FastCGI 모드를 지원합니다.
yum install php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt libmcrypt-devel php-fpm # Y
/etc/init.d/mysqld restart # MySql
/etc/init.d/nginx restart # nginx
/etc/rc.d/init.d/php-fpm start # php-fpm
chkconfig php-fpm on #
# # # # # # # # # # # # # # # # # # # # # # # # # # # # 프로필 편
1. nginx 지원 php 설정
cp /etc/nginx/nginx.conf /etc/nginx/nginx.confbak #
vi /etc/nginx/nginx.conf #
user nginx nginx;
# nginx :nginx nginx
:wq!# 저장 종료
cp /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.confbak #
vi /etc/nginx/conf.d/default.conf #
index index.php index.html index.htm;
# index.php
# 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 $document_root$fastcgi_script_name;
include fastcgi_params;
}
# FastCGI 서버의 일부 위치에 대한 설명을 취소하고 fastcgi_param 행의 매개 변수, $document_로 변경root$fastcgi_script_name, 또는 절대 경로 사용하기
2. php 설정
vi /etc/php.ini #
date.timezone = PRC # 946 , date.timezone = PRC
disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid, posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname
# 386 PHP , , , 。
expose_php = Off # 432 php
magic_quotes_gpc = On # 745 magic_quotes_gpc SQL
open_basedir = .:/tmp/ # 380 , ( PHP ) /tmp/ , php , , , /var/www/html/ /:/tmp/
:wq!# 저장 종료
3. php-fpm 설정
cp /etc/php-fpm.d/www.conf /etc/php-fpm.d/www.confbak
# 기존 구성 파일 백업
vi /etc/php-fpm.d/www.conf
# 편집
user = nginx
# nginx
group = nginx
# nginx
/etc/init.d/mysqld restart # MySql
/etc/init.d/nginx restart # nginx
/etc/rc.d/init.d/php-fpm restart # php-fpm
#########################테스트편
cd /usr/share/nginx/html/ # nginx
vi index.php # index.php
<?php
phpinfo();
?>
:wq! #보존
chown nginx.nginx /usr/share/nginx/html/ -R #
chmod 700 /usr/share/nginx/html/ -R #
클라이언트 브라우저에서 서버 IP 주소를 입력하면 관련 구성 정보를 볼 수 있습니다!
비고
nginx 기본 사이트 디렉터리는:/usr/share/nginx/html/
권한 설정: chown nginx.nginx/usr/share/nginx/html/-R
MySQL 데이터베이스 디렉토리는:/var/lib/mysql
권한 설정: chown mysql.mysql -R /var/lib/mysql
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
PHP7.4.6 오류 컴파일configure: error: Package requirements (libzip > = 0.11) were not met 솔루션쓸데없는 말은 하지 마십시오. php7.3을 설치할 때 오류가 발생했습니다. 시스템libzipmust be upgraded to version >= 0.1.의심할 여지없이libzip 버전이 너무 낮습니다. 첫 번째 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.