- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章centos6.4+nginx+mysql+php+phpmyadmin整合过程详解由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
本文实例讲述了centos6.4+nginx+mysql+php+phpmyadmin整合过程。分享给大家供大家参考,具体如下:
装了很多次机,做了很多次重复工作,最后,总结以下装CentOS经验:
注:很多问题其实都不是问题,先把selinux关了!setenforce 0 ,不然会死的很惨! 。
1. 先更新源 。
启用国内的源:163或sohu 。
163:http://mirrors.163.com/.help/centos.html 。
如果想使用新的软件,建议用REPL和remi的源 。
1
2
3
4
5
6
|
#remi的源
rpm -ivh http:
//rpms
.famillecollet.com
/enterprise/remi-release-6
.rpm
rpm --
import
/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
#Fedora REPL的源
rpm -ivh http:
//download
.fedoraproject.org
/pub/epel/6/x86_64/epel-release-6-8
.noarch.rpm
rpm --
import
/etc/pki/rpm-gpg/RPM-GPG-KEY-remi
|
然后 yum update 升级系统 。
下面才是安装我们需要的软件,例如 nginx+php+php-fpm+mysql+vsftpd等 。
下面开始配置:
1. 设置系统时间 。
1
2
3
4
|
cp
/usr/share/zoneinfo/Asia/Hong_Kong
/etc/localtime
date
#查看系统时间
*
/30
* * * *
/usr/sbin/ntpdate
time
.nist.gov
crontab
-e
|
加入这行:*/30 * * * * /usr/sbin/ntpdate time.nist.gov 。
2. 更新系统 。
1
|
yum update
|
3. 安装Nginx
Niginx 官方的更新源增加: vim /etc/yum.repos.d/nginx.repo 。
增加以下内容 。
1
2
3
4
5
6
|
[nginx]
name=nginx repo
baseurl=http:
//nginx
.org
/packages/centos/6/
$basearch/
gpgcheck=0
enabled=1
yum
install
nginx
|
优化Nginx配置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
#根据CPU核心processes而定
worker_processes 6;
worker_cpu_affinity 000001 000010 000100 001000 010000 100000 ;<br><br>
#启用epoll
worker_rlimit_nofile 51200;
events {
worker_connections 51200;
use epoll;
}
#参数调整
sendfile on;
tcp_nopush on;
tcp_nodelay on;
server_tokens off;
keepalive_timeout 50;
server_names_hash_bucket_size 128;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 50m;
#fastcgi优化
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 256k;
#开启gzip并优化
gzip
on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text
/plain
application
/x-javascript
text
/css
application
/xml
;
gzip_vary on;
|
设置开机启动:
1
2
3
4
|
service nginx start
chkconfig nginx on
#安装php,php-fpm
yum
install
php php-fpm php-bcmatch php-gd php-mbstring php-mcrypt php-mysql
|
配置PHP脚本的运行:
1
2
|
cp
/etc/nginx/conf
.d
/default
.conf etc
/nginx/conf
.d
/default
.confbak
vim
/etc/nginx/conf
.d
/default
.conf
|
设置网站的默认目录:#这里php-fpm是采用监听端口的方式,同一台机的话最好采用unix socket 。
1
2
3
4
5
6
7
8
9
|
#去除下面这段内容的注释
location ~ \.php$ {
root
/home/www
;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
#注意其中fastcgi_param行的参数,改为$document_root$fastcgi_script_name,或者使用绝对路径
|
4. vsftpd配置 。
先配置iptables , vi /etc/sysconfig/iptables ,复制 --dport 22那行,粘贴改成21端口。保存,重启service iptables restart.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
yum
install
vsftpd
ftp
touch
/var/log/vsftpd
.log
service vsftpd start
chkconfig vsftpd on
vim
/etc/vsftpd/vsftpd
.conf
#修改相关参数如下:
#设定不允许匿名访问
anonymous_enable=NO
#设定本地用户可以访问。注:如使用虚拟宿主用户,在该项目设定为NO的情况下所有虚拟用户将无法访问。
local_enable=YES
#使用户不能离开主目录,并制定文件
chroot_list_enable=YES
chroot_list_file=
/etc/vsftpd/chroot_list
#设定vsftpd的服务日志保存路径。注意,该文件默认不存在。必须要手动touch出来 ,前面步骤已经创建
xferlog_file=
/var/log/vsftpd
.log
#允许使用ASCII模式上传和下载
ascii_upload_enable=YES
ascii_download_enable=YES
#PAM认证文件名。PAM将根据/etc/pam.d/vsftpd进行认证
pam_service_name=vsftpd
#以下这些是关于Vsftpd虚拟用户支持的重要CentOS FTP服务配置项目。默认vsftpd.conf中不包含这些设定项目,需要自己手动添加RHEL/CentOS FTP服务配置。
#设定启用虚拟用户功能。
guest_enable=YES
#指定虚拟用户的宿主用户。-RHEL/CentOS中已经有内置的ftp用户了
guest_username=
ftp
#设定虚拟用户个人vsftp的RHEL/CentOS FTP服务文件存放路径。存放虚拟用户个性的CentOS FTP服务文件(配置文件名=虚拟用户名) user_config_dir=/etc/vsftpd/vuser_conf
touch
/etc/vsftpd/chroot_list
echo
ftp
>>
/etc/vsftpd/chroot_list
yum
install
db4 db4-utils
vim
/etc/vsftpd/vuser_passwd
.txt
|
加入相应的用户信息,其中奇数行为你新增用户的账号,偶数行为密码,不能有空格 。
username1 password1 username2 password2 。
保存文件退出,生成用户认证的db文件 。
1
2
|
db_load -T -t
hash
-f
/etc/vsftpd/vuser_passwd
.txt
/etc/vsftpd/vuser_passwd
.db
vim
/etc/pam
.d
/vsftpd
|
用#注释所有的内容,然后增加以下两行内容:
1
2
|
auth required pam_userdb.so db=
/etc/vsftpd/vuser_passwd
account required pam_userdb.so db=
/etc/vsftpd/vuser_passwd
|
保存退出。再创建虚拟用户的ftp服务文件夹,以及前文中所增加的账号用户的配置文件 。
1
2
|
mkdir
/etc/vsftpd/vuser_conf/
vim
/etc/vsftpd/vuser_conf/username1
|
填写以下内容:
1
2
3
4
5
6
7
8
|
#username1用户的根目录(自己决定)
local_root=
/home/www/ftp
write_enable=YES
anon_umask=0
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
|
保存内容,退出。要创建上述配置文件中所设置的用户根目录,并为其设置权限 。
1
2
3
|
mkdir
/home/www/ftp
chmod
777
/home/www/ftp
service vsftpd restart
|
ok 。
#有时候会出现,可以连接ftp,却不能列出目录,这个是iptable的端口问题。开启PASV即可,vim /etc/vsftpd/vsftpd.conf 。
1
2
3
|
pasv_enable=YES
pasv_min_port=9000
pasv_max_port=9020
|
然后在iptables里面加上这两个端口,还是前面说的,yy一行22,再p一下,把22改成9000:9020,
还有可能是selinux的关机, 。
1
2
|
modprobe ip_nat_ftp
service iptables restart && service vsftpd restart
|
5. 安装Mysql5.6 。
1
2
3
4
|
yum update
#数据库服务器的安装 , 请自行在mysql官方找最新的rpm
rpm -Uvh http:
//dev
.mysql.com
/get/mysql-community-release-el6-5
.noarch.rpm
yum
install
mysql-server
|
安装完成后记得运行 。
1
|
mysql_security_installation
|
远程连接时,还要将mysql3306端口加入iptables,同样使用前面的方法,复制一句22的,改成3306,重启iptables即可.
配置mysql远程连接:命令行使用root登录 。
1
2
3
|
mysql -uroot -p
use mysql;
update user
set
host =
'%'
where user =
'root'
;
|
另外可能的工作:
安装phpMyAdmin 。
google phpMyAdmin找到在sourceforge的地址,然后在网站根目录下wget下来.
解压,重命名目录,进入目录, 。
1
|
cp
config.sample.inc.php config.inc.php
|
重启nginx 。
注意这里还得再改一下,浏览器进入phpmyadmin地址,可能会出现下面的错误:
Cannot start session without errors, please check errors given in your PHP and/or webserver log file and configure your PHP installation properly. 。
需要将/var/lib/php/session的所有者改为nginx 。
1
|
chown
-R nginx:nginx
/var/lib/php/session
|
现在应该可以访问了... 。
配置mysql远程连接 。
因为管理需要,我们需要远程连接一下mysql,以进行管理。安装好phpmyadmin后,在用户那里可以选择新建一个用户,将主机设置为需要连接的主机ip或任意主机即可 。
自动挂载硬盘:
由于外置了一个硬盘,所以得配置开机自动挂载。vim /etc/fstab加入:
1
|
/dev/sdc
/mnt/data
auto defaults 0 0
|
centos网络配置:
IP设置 : /etc/sysconfig/network-scripts/ifcfg-eth0 。
网关设置: /etc/sysconfig/network 。
DNS设置: /etc/resolv.conf 。
重启网络:
1
|
service network restart
|
关闭SELiinux 。
在后面的工作中,发现很多地方不方便,例如ftp无法上传等问题,ssh远程无法连接等,于是关闭SELinux,运行以下命令:
1
2
|
#/usr/sbin/setenforce 0
#echo "usr/sbin/setenforce 0" >> /etc/rc.local
|
这样就可以把关闭SELinux加入开机启动.
希望本文所述对大家CentOS服务器配置有所帮助.
最后此篇关于centos6.4+nginx+mysql+php+phpmyadmin整合过程详解的文章就讲到这里了,如果你想了解更多关于centos6.4+nginx+mysql+php+phpmyadmin整合过程详解的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我正在使用 CentOS 6 机器。我尝试遵循以下指南: How to open port in centOS http://ask.xmodulo.com/open-port-firewall-ce
我正在为 CentOS 7 创建一个脚本,但我正在努力根据变量连接值,这与我工作的其他发行版不同。例如,在下面的代码中: DIR_BKP=/tmp/_bkp_local PATH_LOG=$DIR_B
我从以下位置下载了文件: https://github.com/christiangalsterer/httpbeat/releaseshttpbeat-4.0.0-x86_64.rpm 并尝试通过以
我想在我的 Centos 8 中使用命令 mkimage。 我尝试使用命令 dnf install uboot-tools 以 root 身份安装 uboot-tools 但这不可用。 谁能指导我如何
我有一个 Centos 服务器。 结果 $ cat /etc/centos-release CentOS Linux release 7.9.2009 (Core) 和 $ yum list i
我在CentOs7 上安装Gitlab 后遇到了麻烦。我第一次被重定向到管理员密码创建页面,在输入管理员用户密码后,服务器发送错误。 422 The change you requested was
因此,我正在尝试从我的一个运行 centos 的邮箱中发送电子邮件,并且我已经安装并打开了 sendmail,但是发送一封电子邮件实际上需要几分钟时间。电子邮件不是应该几乎是即时的吗? 这是我的/et
我正在尝试在虚拟 Centos 7 发行版上构建一些 C++ 库。由于我还没有发现这个操作系统看不到/usr/local/lib 或/usr/local/lib64 的原因,这些库安装在其他 linu
我正在尝试通过以下网址在我的服务器(centos 7.1 minimal)上安装 imagemagick: imagemagick installation steps 在第 1 步得到这个错误: L
当我尝试安装 rpmforge(我需要安装 phpmyadmin)时出现此错误,将不胜感激任何帮助! [root@plasticarmy ~]# yum http://pkgs.repoforge.o
我需要安装一个centos 5 repo 来在centos 7 机器上下载用于el5 的dhclient,以便在centos 5 机器上传输dhclient rpms。有可能的 ? 谢谢! 最佳答案
我正在开发一个可以在 CentOS 8 和 CentOS 7 系统上运行的程序。在其中,我使用 gethostbyname 将 DNS 名称解析为 IP 地址。 为了尝试使代码可移植,我正在使用以下命
我想在 CentOS7(或 CentOS6)上安装 cgal 模块。它需要 pgrouting 才能使用 PostGIS。 我一直用 CGAL Manual Installation 安装 cgal
我在 CentOS 平台上使用 R/RStudio。我需要查看二进制日志文件(/var/log/messages)是否包含有关图形设备绘图问题的更多信息,但我无法从 RStudio 中读取它。 我在社
我正在尝试在我的 CentOS 上本地安装 Kubernetes。我正在关注这个博客 http://containertutorials.com/get_started_kubernetes/inde
来自 http://kubernetes.io/docs/getting-started-guides/kubeadm/ CentOS Linux 版本 7.2.1511(核心) (1/4) 在主机上
使用tcpdump监控网络流量时,发现很多dns反向查询记录。 像这样: A_IP.55276 > DNS_IP.domain: 9247+ PTR?查询 IP.in-addr.arpa。 (45)
我正在尝试在 CentOS 6.7 和 ./configure --prefix=$HOME/local 上安装 mutt运行良好,但在 make install步骤,我在下面遇到了这个错误,我不知道
如何在 CENTOS 中删除所有以 *0x0.jpg 结尾的文件?我需要删除嵌套在文件夹和子文件夹中的多个文件 最佳答案 我假设你有一个外壳 - 试试 find /mydirectory -type
我需要检索安装在我的 Linux (Centos) 主机上的所有软件包的软件包版本。 rpm -qa 给了我所有已安装软件包的列表。 我知道 rpm -qi "package name"给了我包信息。
我是一名优秀的程序员,十分优秀!