Centos 7 PHP7+PHP5.6+NGINX+MYSQL+FTP
来源:互联网 发布:苹果微信录屏软件 编辑:程序博客网 时间:2024/06/05 17:00
Centos 7 PHP7+PHP5.6+NGINX+MYSQL+FTP
一、PHP安装
1、wget http://cn2.php.net/distributions/php-7.0.13.tar.gz2、yum install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel MySQL pcre-devel curl-devel libxslt-devel openssl-devel openssl libmcrypt3、./configure --prefix=/usr/local/php7 --exec-prefix=/usr/local/php7 --with-config-file-path=/usr/local/php7/etc --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-msyql --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-xmlrpc --with-xsl --with-zlib --with-zlib-dir --with-mhash --with-mcrypt-dir --with-openssl-dir --with-jpeg-dir --enable-gd-jis-conv --enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-gd-native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --enable-zip4、make && make install5 、cp php.ini-production /usr/local/php7/etc/php.ini 6、cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf7、cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf8、cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm9、加入服务 chmod +x /etc/init.d/php-fpm chkconfig --add php-fpm 启动 /etc/init.d/php-fpm start10、/usr/local/php7/bin/php -v
二、NGINX安装
1、wget http://nginx.org/download/nginx-1.8.0.tar.gz2、tar -zxvf nginx-1.8.0.tar.gz3、 yum install pcre* yum install openssl* yum install zlib yum install zlib-devel yum install wget4、cd nginx-1.8.0./configure --prefix=/usr/local/nginx-1.8.05、make && make install6、./sbin/nginx7、./sbin/nginx -s stop8、nginx加入服务
原地址:http://blog.sina.com.cn/s/blog_a51d7b7a0102v0c2.html
#!/bin/sh## nginx - this script starts and stops the nginx daemin## chkconfig: - 85 15 # description: Nginx is an HTTP(S) server, HTTP(S) reverse \# proxy and IMAP/POP3 proxy server# processname: nginx# config: /usr/local/nginx-1.10.0/conf/nginx.conf# pidfile: /usr/local/nginx-1.10.0/logs/nginx.pid# Source function library.. /etc/rc.d/init.d/functions# Source networking configuration.. /etc/sysconfig/network# Check that networking is up.[ "$NETWORKING" = "no" ] && exit 0nginx="/usr/local/nginx-1.10.0/sbin/nginx"prog=$(basename $nginx)NGINX_CONF_FILE="/usr/local/nginx-1.10.0/conf/nginx.conf"lockfile=/var/lock/subsys/nginxstart() { [ -x $nginx ] || exit 5 [ -f $NGINX_CONF_FILE ] || exit 6 echo -n $"Starting $prog: " daemon $nginx -c $NGINX_CONF_FILE retval=$? echo [ $retval -eq 0 ] && touch $lockfile return $retval}stop() { echo -n $"Stopping $prog: " killproc $prog -QUIT retval=$? echo [ $retval -eq 0 ] && rm -f $lockfile return $retval}restart() { configtest || return $? stop start}reload() { configtest || return $? echo -n $"Reloading $prog: " killproc $nginx -HUP RETVAL=$? echo}force_reload() { restart}configtest() { $nginx -t -c $NGINX_CONF_FILE}rh_status() { status $prog}rh_status_q() { rh_status >/dev/null 2>&1}case "$1" in start) rh_status_q && exit 0 $1 ;; stop) rh_status_q || exit 0 $1 ;; restart|configtest) $1 ;; reload) rh_status_q || exit 7 $1 ;; force-reload) force_reload ;; status) rh_status ;; condrestart|try-restart) rh_status_q || exit 0 ;; *) echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}" exit 2esac9、chmod a+x /etc/init.d/nginx10、chkconfig --add nginx chkconfig nginx on
三、NGINX配置
location / { root /www; index index.php index.html index.htm; } location ~ \.php$ { root /www; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
四、多版本PHP配置
原文:http://www.lnmp.cn/multiple-php-versions-under-lnmp.html
1、[root@lnmp php-5.6.21]# cp /usr/local/php5/etc/php-fpm.conf.default /usr/local/php5/etc/php-fpm.conf[root@lnmp php-5.6.21]# vim /usr/local/php5/etc/php-fpm.conf2、查找 listen 将listen = 127.0.0.1:9000改成listen = 127.0.0.1:90013、配置 php-fpm 服务因为 PHP 7 的服务文件为 php-fpm.service 所以这里用 php5-fpm.service[root@lnmp php-5.6.21]# cp sapi/fpm/php-fpm.service /usr/lib/systemd/system/php5-fpm.service[root@lnmp php-5.6.21]# vim /usr/lib/systemd/system/php5-fpm.service将:PIDFile=${prefix}/var/run/php-fpm.pidExecStart=${exec_prefix}/sbin/php-fpm --nodaemonize --fpm-config ${prefix}/etc/php-fpm.conf改成PIDFile=/usr/local/php5/var/run/php-fpm.pidExecStart=/usr/local/php5/sbin/php-fpm --nodaemonize --fpm-config /usr/local/php5/etc/php-fpm.conf这里做的就是用刚才 PHP 5 安装路径替代 prefix 变量重新载入 systemd[root@lnmp php-5.6.21]# systemctl daemon-reload4、systemctl start php5-fpm5、配置不同的 nginx 站点使用不用的 PHP 版本一、为网站创建一个目录:[root@lnmp php-5.6.21]# mkdir -p /www/dev.lnmp.cn二、创建 phpinfo 文件[root@lnmp php-5.6.21]# vim /www/dev.lnmp.cn/phpinfo.php三、输入,并保存:<?phpphpinfo();四、创建 nginx 站点配置文件[root@lnmp php-5.6.21]# cd /etc/nginx/conf.d/[root@lnmp conf.d]# vim dev.lnmp.cn.conf输入,并且保存:server { listen 80; server_name dev.lnmp.cn; root /www/dev.lnmp.cn; location / { index index.php index.html index.htm; } location ~ \.php$ { fastcgi_pass 127.0.0.1:9001; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }}
五、MYSQL
yum install mysql
六、ftp配置
原文地址:http://www.osyunwei.com/archives/9006.html
1、关闭firewall:systemctl stop firewalld.service #停止firewallsystemctl disable firewalld.service #禁止firewall开机启动2、安装iptables防火墙yum install iptables-services #安装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 21 -j ACCEPT-A INPUT -m state --state NEW -m tcp -p tcp --dport 10060:10090 -j ACCEPT-A INPUT -j REJECT --reject-with icmp-host-prohibited-A FORWARD -j REJECT --reject-with icmp-host-prohibitedCOMMIT:wq! #保存退出systemctl restart iptables.service #最后重启防火墙使配置生效systemctl enable iptables.service #设置防火墙开机启动说明:21端口是ftp服务端口;10060到10090是Vsftpd被动模式需要的端口,可自定义一段大于1024的tcp端口。系统运维 www.osyunwei.com 温馨提醒:qihang01原创内容©版权所有,转载请注明出处及原文链接二、关闭SELINUXvi /etc/selinux/config#SELINUX=enforcing #注释掉#SELINUXTYPE=targeted #注释掉SELINUX=disabled #增加:wq! #保存退出setenforce 0 #使配置立即生效三、安装vsftpdyum install -y vsftpd #安装vsftpdyum install -y psmisc net-tools systemd-devel libdb-devel perl-DBI #安装vsftpd虚拟用户配置依赖包systemctl start vsftpd.service #启动systemctl enable vsftpd.service #设置vsftpd开机启动四、配置vsftp服务器cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf-bak #备份默认配置文件执行以下命令进行设置sed -i "s/anonymous_enable=YES/anonymous_enable=NO/g" '/etc/vsftpd/vsftpd.conf'sed -i "s/#anon_upload_enable=YES/anon_upload_enable=NO/g" '/etc/vsftpd/vsftpd.conf'sed -i "s/#anon_mkdir_write_enable=YES/anon_mkdir_write_enable=YES/g" '/etc/vsftpd/vsftpd.conf'sed -i "s/#chown_uploads=YES/chown_uploads=NO/g" '/etc/vsftpd/vsftpd.conf'sed -i "s/#async_abor_enable=YES/async_abor_enable=YES/g" '/etc/vsftpd/vsftpd.conf'sed -i "s/#ascii_upload_enable=YES/ascii_upload_enable=YES/g" '/etc/vsftpd/vsftpd.conf'sed -i "s/#ascii_download_enable=YES/ascii_download_enable=YES/g" '/etc/vsftpd/vsftpd.conf'sed -i "s/#ftpd_banner=Welcome to blah FTP service./ftpd_banner=Welcome to FTP service./g" '/etc/vsftpd/vsftpd.conf'echo -e "use_localtime=YES\nlisten_port=21\nchroot_local_user=YES\nidle_session_timeout=300\ndata_connection_timeout=1\nguest_enable=YES\nguest_username=vsftpd\nuser_config_dir=/etc/vsftpd/vconf\nvirtual_use_local_privs=YES\npasv_min_port=10060\npasv_max_port=10090\naccept_timeout=5\nconnect_timeout=1" >> /etc/vsftpd/vsftpd.conf五、建立虚拟用户名单文件touch /etc/vsftpd/virtusers编辑虚拟用户名单文件:(第一行账号,第二行密码,注意:不能使用root做用户名,系统保留)vi /etc/vsftpd/virtusersweb1123456web2123456web3123456:wq! #保存退出六、生成虚拟用户数据文件db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.dbchmod 600 /etc/vsftpd/virtusers.db #设定PAM验证文件,并指定对虚拟用户数据库文件进行读取七、在/etc/pam.d/vsftpd的文件头部加入以下信息(在后面加入无效)修改前先备份 cp /etc/pam.d/vsftpd /etc/pam.d/vsftpdbakvi /etc/pam.d/vsftpdauth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusersaccount sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers注意:如果系统为32位,上面改为lib,否则配置失败八、新建系统用户vsftpd,用户目录为/home/wwwroot, 用户登录终端设为/bin/false(即使之不能登录系统)useradd vsftpd -d /home/wwwroot -s /bin/falsechown vsftpd:vsftpd /home/wwwroot -Rchown www:www /home/wwwroot -R #如果虚拟用户的宿主用户为www,需要这样设置。九、建立虚拟用户个人Vsftp的配置文件mkdir /etc/vsftpd/vconfcd /etc/vsftpd/vconftouch web1 web2 web3 #这里创建三个虚拟用户配置文件mkdir -p /home/wwwroot/web1/http/vi web1 #编辑用户web1配置文件,其他的跟这个配置文件类似local_root=/home/wwwroot/web1/http/write_enable=YESanon_world_readable_only=NOanon_upload_enable=YESanon_mkdir_write_enable=YESanon_other_write_enable=YESallow_writeable_chroot=YES十、最后重启vsftpd服务器systemctl restart vsftpd.service备注:guest_username=vsftpd #指定虚拟用户的宿主用户(就是我们前面新建的用户)guest_username=www #如果ftp目录是指向网站根目录,用来上传网站程序,可以指定虚拟用户的宿主用户为nginx运行账户www,可以避免很多权限设置问题
至此,CentOS 7.0安装配置Vsftp服务器配置完成。
1 0
- Centos 7 PHP7+PHP5.6+NGINX+MYSQL+FTP
- CentOS安装Nginx+mysql+PHP5.6
- Centos+Nginx+PHP7.0编译安装(和PHP5.6老版本共存)
- Centos+Nginx+PHP7.0编译安装(和PHP5.6老版本共存)
- nginx+php5&php7安装
- centos 编译安装php7.1 mysql nginx
- CentOS 5.5 PHP5.3.14 mysql Nginx攻略
- Centos下PHP5升级PHP7
- 在centos 7上装载php7.0.2、mysql 5.7.11 和 nginx-1.9.12
- win10+nginx+php7+mysql
- ubuntu nginx+php7+mysql
- win10+nginx+php7+mysql
- CentOS 6 部署 Nginx + PHP5 服务器
- CentOS 6 部署 Nginx + PHP5 服务器
- CentOS 编译安装 php7 + nginx
- centos + php5.4 + nginx 编译安装,连接mysql出错
- 教你编译PHP7 (nginx+mysql+php7)
- 教你编译PHP7 (nginx+mysql+php7)
- leetcode-37. Sudoku Solver
- Linux Top 命令解析 比较详细
- Vue2.0 开发环境搭建
- 一、C语言的基础
- boost::io_service解读
- Centos 7 PHP7+PHP5.6+NGINX+MYSQL+FTP
- 【9】Hibernate的其他的API
- php获取文件创建时间、修改时间、访问时间
- 1的个数
- 斐波那契数列时间复杂度分析
- Cloud9 IDE在ubuntu系统的本地安装
- 浅谈12306核心模型设计思路和架构设计
- 【杂项】有趣的思维题
- NYOJ 99 - 欧拉图 单词拼接