CentOS6 LNMP 环境安装部署手札

0. 基本模块

https://www.digitalocean.com/community/tutorials/how-to-install-linux-nginx-mysql-php-lemp-stack-on-centos-6

yum install epel-release

1. Nginx 的安装

http://nginx.org/en/linux_packages.html

先要查看一下当前的发行版:

lsb_release

例如我的是 amd64,那么:

cat <<EOF>/etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/6/x86_64/
gpgcheck=0
enabled=1
EOF

yum update
yum install nginx

关于 Nginx 的配置:https://blog.martinfjordvald.com/2010/07/nginx-primer/

“No input file specified” 的问题解决:http://blog.martinfjordvald.com/2011/01/no-input-file-specified-with-php-and-nginx/

这个问题很大程度是由于 root 设置放在了 location 段,将 root 设置提升到 server 段即可解决问题。

记得把 nginx 的执行用户改成 nobody

2. MariaDB 的安装

cat <<EOF>/etc/yum.repos.d/MariaDb.repo
[mariadb]  
name = MariaDB  
baseurl = http://yum.mariadb.org/10.1/centos6-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB  
gpgcheck=1  
EOF

yum update
yum install MariaDB-server MariaDB-client

# 执行配置
/usr/bin/mysql_secure_installation

3. php-fpm 的安装

yum install php-fpm
chkconfig php-fpm on

注意安装完成之后,需要将 /etc/php-fpm.d/www.conf 里面的 user 和 group 都改成 nobody。

改了之后,需要将 session 目录的权限赋予给 nobody 用户。

mkdir -p /var/lib/php/session
setfacl -m u:nobody:rwx /var/lib/php/session

4. phpmyadmin 的安装

yum install phpmyadmin

https://www.digitalocean.com/community/tutorials/how-to-install-and-secure-phpmyadmin-with-nginx-on-an-ubuntu-14-04-server

为了使 phpmyadmin 安全地安装,更好的办法不是在 nginx 上面配置虚拟目录,而是将 /usr/share/phpMyAadmin 软链接到 nginx 根目录上面,并且改一个特殊的名字。

ln -s /usr/share/phpMyAdmin /usr/share/nginx/html/db_manage

这样就可以直接使用 http://example.com/db_manage/ 进入 phpmyadmin 实例了。

5. php 配置

sudo vim /etc/php.ini

# 改成下面这句
# cgi.fix_pathinfo=0

6. vsftpd 的安装

yum install -y vsftpd

修改如下配置,其他保持默认:

chroot_local_user=YES
chroot_list_file=/etc/vsftpd/chroot_list

【转载请附】愿以此功德,回向 >>

原文链接:https://www.huangwenchao.com.cn/2016/01/centos6-lnmp.html【CentOS6 LNMP 环境安装部署手札】

发表评论

电子邮件地址不会被公开。 必填项已用*标注