zoukankan      html  css  js  c++  java
  • CentOs 安装 Nginx + php + mysql (推荐方式)

    本文全部采用yum进行安装, CentOs6.5 mini 版本。

    一、更改yum源为网易的源加快速度, 如果是从网易镜像下载的安装包,直接注释这几项也可以

    vim /etc/yum.repos.d/CentOS-Base.repo

    # 需要更改的项
    [base]
    baseurl = http://mirror.163.com/centos/$releasever/os/$basearch/
    
    [updates]
    baseurl=http://mirror.163.com/centos/$releasever/updates/$basearch/
    
    [extras]
    baseurl=http://mirror.163.com/centos/$releasever/extras/$basearch/
    
    [centosplus]
    baseurl=http://mirror.163.com/centos/$releasever/centosplus/$basearch/
    [contrib] baseurl=http://mirror.163.com/centos/$releasever/contrib/$basearch/

    、安装依赖库

    yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers

    注:lib【生产环境库】, lib-dev【开发环境库】, lib-gdb【调试环境库】,我们安装生产环境库与开发环境库。

    三、由于centos没有默认的nginx软件包,解决方法是:

    1.启用REHL的附件包 (推荐)

    # 32位
    rpm -Uvh ftp://ftp.univie.ac.at/systems/linux/fedora/epel/6/i386/epel-release-6-8.noarch.rpm
    # 64位
    rpm -Uvh ftp://ftp.univie.ac.at/systems/linux/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
    # 如果版本不对,打开列表查看最新版本号

    如果既想获得 RHEL 的高质量、高性能、高可靠性,又需要方便易用(关键是免费)的软件包更新功能,那么 Fedora Project 推出的 EPEL(Extra Packages for Enterprise Linux)正好适合你。EPEL(http://fedoraproject.org/wiki/EPEL) 是由 Fedora 社区打造,为 RHEL 及衍生发行版如 CentOS、Scientific Linux 等提供高质量软件包的项目。

    2. 应用第三方yum源 (不推荐)

    yum install wget #安装下载工具wget
    wget http://www.atomicorp.com/installers/atomic #下载atomic yum源
    sh ./atomic #安装
    yum check-update #更新yum软件包

    四、开始一键安装Nginx, Mysql, PHP

    yum -y install nginx mysql mysql-server mysql-dev php-mysql php-fpm php-cli php-pdo  php-mcrypt php-mbstring php-gd php-tidy php-xml php-xmlrpc php-pear php-pecl-memcache php-eaccelerator

    五、设置启动与开机启动

    启动
    service mysqld start
    service php-fpm start
    service nginx start
    
    设置开机启动
    chkconfig --level 345 mysqld on
    chkconfig --level 345 php-fpm on
    chkconfig --level 345 nginx on
    
    配置文件都在 /etc 下

    六、配置nginx.conf, 能够使用php

    vi /etc/nginx/nginx.conf
    worker_processes  5;
    
    keepalive_timeout  2;
    
    server {
            listen       80;
            server_name  localhost; # 这里一定要设置,否则不能支持php
     
            #charset koi8-r;
     
            #access_log  logs/host.access.log  main;
    root   /usr/share/nginx/html; # 放到该层级让下面的location继承 location
    / { index index.php index.html index.htm; } error_page 404 /404.html; location = /404.html {
    } # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.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$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $ducoment_root$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; } }

    重启nginx

    service nginx restart

    5. 写一个php测试文件

    <?php
    phpinfo();
    ?>

    如果用IP访问不了服务器,则需要配置

    1. 防火墙配置, 开放80,3306端口:

    vi /etc/sysconfig/iptables

    # 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 #重启系统

  • 相关阅读:
    www.redgate.com网站淘宝之旅
    C#判断中文字符 收藏
    .NET 4.0 Interop新特性ICustomQueryInterface (转载)
    Marshaling between Managed and Unmanaged Code(转载)
    AE+C# 实现MERGE, AE实现相同结构图层的合并C#代码(转载)
    Flex屏蔽并自定义鼠标右键菜单(转载)
    面向 Microsoft OracleClient 开发人员的 ODP.NET(资料收集)
    在 Oracle 数据库上使用 Visual Studio 2005 或 2008 构建 .NET 应用程序(官方文章转载)
    HTTP 500 内部服务器错误 IIS
    Resolving Http 500 Server Errors in ASP.Net and IIS 5.1(转载)
  • 原文地址:https://www.cnblogs.com/beceo/p/3284560.html
Copyright © 2011-2022 走看看