Heim > Backend-Entwicklung > PHP-Tutorial > Fedora 17 配置 Nginx + Mysql + php

Fedora 17 配置 Nginx + Mysql + php

WBOY
Freigeben: 2016-06-23 14:29:04
Original
805 Leute haben es durchsucht

1. 安装Mysql5

yum install mysql mysql-serverchkconfig --levels 235 mysqld on
Nach dem Login kopieren

启动

/etc/init.d/mysqld start
Nach dem Login kopieren

查询是否启动

netstat -tap | grep mysql
Nach dem Login kopieren

无法启动mysql时

vi /etc/my.cnf
Nach dem Login kopieren

#skip networking

重启mysql

/etc/init.d/mysqld restart
Nach dem Login kopieren

设置mysql密码:

方法一:

mysqladmin -uroot password
Nach dem Login kopieren

方法二(设置根用户密码)(推荐):

mysql_secure_installation
Nach dem Login kopieren

系统自动启动mysql

方法一(推荐,fedora新到管理服务的命令):

systemctl enable mysqld.servicesystemctl start mysqld.service
Nach dem Login kopieren

方法二:

chkconfig --levels 235 mysqld on
Nach dem Login kopieren

2. 安装Nginx

yum install nginx
Nach dem Login kopieren

设置开机启动

方法一:

chkconfig --levels 235 nginx on/etc/init.d/nginx start
Nach dem Login kopieren

方法二:

systemctl enable nginx.servicesystemctl start nginx.service
Nach dem Login kopieren

3. 安装 PHP

方法一:fastcgi模式

yum install lighttpd-fastcgi php-cli php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-eaccelerator php-magickwand php-magpierss php-mapserver php-mbstring php-mcrypt php-mssql php-shout php-snmp php-soap php-tidy
Nach dem Login kopieren

方法二: php-fpm模式(推荐)

yum install php-fpm php-cli php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-eaccelerator php-magickwand php-mbstring php-mcrypt php-mssql php-shout php-snmp php-soap php-tidy
Nach dem Login kopieren

配置php

vi /etc/php.ini
Nach dem Login kopieren

cgi.fix_pathinfo = 0 (推荐设置为0,默认为1,为1时会有安全漏洞)

查看本机时区

cat /etc/sysconfig/clock
Nach dem Login kopieren

修改配置

date.timezone="Asia/Shanghai"

启动php
一:以spawn-fcgi模式的启动
spawn-fcgi --help

/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u nginx -g nginx -f /usr/bin/php-cgi -P /var/run/fastcgi-php.pid
Nach dem Login kopieren
Nach dem Login kopieren

设置开机启动:

vi /etc/rc.local 加入

/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u nginx -g nginx -f /usr/bin/php-cgi -P /var/run/fastcgi-php.pid
Nach dem Login kopieren
Nach dem Login kopieren

二:以php-fpm模式的启动

systemctl enable php-fpm.servicesystemctl start php-fpm.service
Nach dem Login kopieren

注意这个地方会遇到这个错误 :

systemctl start php-fpm.serviceJob failed. See system journal and 'systemctl status' for details.
Nach dem Login kopieren

搜索了好久,都没有搜到,一开始以为没有把php-rpm.conf.default改为php-rpm.conf, 后来发现其实这个文件已经存在了。

后来通过systemctl status php-fpm.service在日志中终于找到了原因:
原来是没有配置好php-rpm.conf 及它包含到文件/etc/php-fpm.d/www.conf
在此文件中
默认的 user = apache
默认到 group = apache
因为是安装nginx,所以全部改为nginx后,终于可以启动php-fpm了。

4. 配置nginx

vi /etc/nginx/nginx.conf
Nach dem Login kopieren

worker_processes  5;keepalive_timeout  2;server {        listen       80;        server_name  localhost; # 这里一定要设置,否则不能支持php         #charset koi8-r;         #access_log  logs/host.access.log  main;         location / {            root   /usr/share/nginx/html;            index  index.php index.html index.htm;        }         error_page  404              /404.html;        location = /404.html {            root   /usr/share/nginx/html;        }         # redirect server error pages to the static page /50x.html        #        error_page   500 502 503 504  /50x.html;        location = /50x.html {            root   /usr/share/nginx/html;        }         # proxy the PHP scripts to Apache listening on 127.0.0.1:80        #        #location ~ \.php$ {        #    proxy_pass   http://127.0.0.1;        #}         # 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  /usr/share/nginx/html$fastcgi_script_name;            include        fastcgi_params;        }         # deny access to .htaccess files, if Apache's document root        # concurs with nginx's one        #        location ~ /\.ht {            deny  all;        }    }
Nach dem Login kopieren

重启nginx

systemctl reload nginx.service
Nach dem Login kopieren

5. 写一个php测试文件

<?phpphpinfo();?>
Nach dem Login kopieren

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage