Heim >Backend-Entwicklung >PHP-Tutorial >Nginx-PHP-Konfiguration

Nginx-PHP-Konfiguration

WBOY
WBOYOriginal
2016-07-29 09:12:37923Durchsuche

CentOS 6.2 yum安装配置lnmp服务器(Nginx+PHP+MySQL)
准备篇:
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
#########################################################
系统运维 www.osyunwei.com 温馨提醒:qihang01原创内容?版权所有,转载请注明出处及原文链接
/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 第三方yum源(CentOS默认的标准源里没有nginx软件包)
       yum install wget    #安装下载工具wget
       wget http://www.atomicorp.com/installers/atomic  #下载atomic yum源
       sh ./atomic   #安装
       yum check-update  #更新yum软件包
#############################################################################
安装篇:
一、安装nginx
       yum install nginx      #安装nginx,根据提示,输入Y安装即可成功安装
       service nginx start    #启动
       chkconfig  nginx on    #设为开机启动
       /etc/init.d/nginx  restart  #重启
       rm -rf /usr/share/nginx/html/*  #删除ngin默认测试页
二、安装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!
系统运维 www.osyunwei.com 温馨提醒:qihang01原创内容?版权所有,转载请注明出处及原文链接
       MySql密码设置完成,重新启动 MySQL:
      /etc/init.d/mysqld stop   #停止
      /etc/init.d/mysqld start  #启动
      service mysqld restart    #重启
三、安装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 #Geben Sie entsprechend der Eingabeaufforderung Y ein und drücken Sie die Eingabetaste
/etc/init.d/mysqld restart #Restart MySql
/etc/init.d/nginx restart #Restart nginx
/etc/rc.d/ init.d /php-fpm start #php-fpm starten
chkconfig php-fpm on #Start festlegen
###################### # ############################################## #
Konfiguration
1. Konfigurieren Sie Nginx für die Unterstützung von PHP
cp /etc/nginx/nginx.conf /etc/nginx/nginx.confbak #Sichern Sie die ursprüngliche Konfigurationsdatei
vi /etc/nginx /nginx.conf #Bearbeiten
Benutzer nginx nginx; #Ändern Sie das laufende Nginx-Konto in: nginx-Benutzer der nginx-Gruppe
:wq! default.conf /etc/nginx/conf.d/default.confbak #Sichern Sie die ursprüngliche Konfigurationsdatei
vi /etc/nginx/conf.d/default.conf #Bearbeiten
index index.php index.html index.htm; #Index.php hinzufügen
Systembetrieb und -wartung www.osyunwei.com Herzliche Erinnerung: qihang01 Originalinhalt? Bitte geben Sie die Quelle und den Originallink zum Nachdruck an
# geben Sie die PHP-Skripte an FastCGI-Server überwacht 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;
}
#Kommentieren Sie den Speicherort des FastCGI-Serverteils aus und achten Sie auf die Parameter der Zeile fastcgi_param, ändern Sie ihn in $document_root$fastcgi_script_name, oder Verwenden Sie den absoluten Pfad
2. Konfigurieren Sie php
vi /etc/php.ini #Bearbeiten
date.timezone = PRC #Entfernen Sie das vorherige Semikolon in Zeile 946 und ändern Sie es in date.timezone = PRC
disable_functions = passhru,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
                                           #Listen Sie in Zeile 386 die Funktionen auf, die PHP deaktivieren kann. Wenn einige Programme diese Funktion verwenden müssen , kann es gelöscht und deaktiviert werden.
Exposé_php = Aus #Anzeige der PHP-Versionsinformationen in Zeile 432 unterdrücken
magic_quotes_gpc = Ein #Magic_quotes_gpc in Zeile 745 einschalten, um SQL-Injection zu verhindern
open_basedir = .:/tmp/ #In Zeile 380 die Einstellung Zeigt die Berechtigung an, auf das aktuelle Verzeichnis (d. h. das Verzeichnis, in dem sich die PHP-Skriptdatei befindet) und das Verzeichnis /tmp/ zuzugreifen, um zu verhindern, dass PHP-Trojaner Websites passieren. Wenn nach der Änderung Probleme mit dem Installationsprogramm auftreten, können Sie sich abmelden dieser Zeile, oder schreiben Sie direkt den Programmverzeichnispfad /var/www /html/www.osyunwei.com/:/tmp/
:wq! #Speichern und beenden
3. Konfigurieren Sie php-fpm
Systembetrieb und -wartung www.osyunwei.com Herzliche Erinnerung: qihang01 Originalinhalt? Copyright Für alle Nachdrucke geben Sie bitte die Quelle und den Originallink an
cp /etc/php-fpm.d/www.conf /etc/php-fpm .d/www.confbak #Sichern Sie die ursprüngliche Konfigurationsdatei
vi /etc /php-fpm.d/www.conf #Bearbeiten
Benutzer = nginx #Benutzer in nginx ändern
Gruppe = nginx #Ändern Gruppe zu nginx
/etc/init.d/mysqld restart #Restart MySql
/etc/init.d/nginx restart #Restart nginx
/etc/rc.d/init.d/php-fpm restart #php-fpm neu starten
########## ############################# ################# ###############
Testartikel
cd /usr/share/nginx/html / #Geben Sie das Stammverzeichnis der Nginx-Standardwebsite ein
vi index.php # Erstellen Sie eine neue index.php-Datei
phpinfo();
?>
:wq! Speichern
chown nginx.nginx /usr/share/nginx/html/ - R #Verzeichnisbesitzer festlegen
chmod 700 /usr/share/nginx/html/ -R #Verzeichnisberechtigungen festlegen
Geben Sie die Server-IP-Adresse in den Client-Browser ein, Sie können die relevanten Konfigurationsinformationen sehen!
############################################# ###########################

Das Obige stellt die Nginx-PHP-Konfiguration vor, einschließlich der Installation von MySQL, des FastCGI-Modus und von chmod. Ich hoffe, es wird für Freunde hilfreich sein, die sich für PHP-Tutorials interessieren.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn