2019-01-30 22:10:43
来 源
liuzhongwei
阿里云
CentOS 6.8 64位 阿里公共镜像下的安装配置Apache+Mysql+PHP的步骤及命令,完整。

这篇文章不算是傻瓜式教学一步步来,因为你有点linux的命令基础;

配置服务器坚持一个原则,能不安装的东西尽量不安装,所以我这里不安装FTP,不搭建服务器端的FTP服务。

CentOS 6.8 64位 阿里公共镜像

别忘记命令

(编辑文档:按“i”进入编辑;如果保存退出,按Esc键后,再“:wq”回车 )

(查找关键字:在命令模式下敲斜杆( / )这时在状态栏屏幕左下脚 就出现了 “/” 然后输入你要查找的关键字敲回车就可以了.如果你要继续查找此关键字,敲字符 n 就可以继续查找了。)

第一步:【服务器到手第一步:配置防火墙:开启80端口、3306端口】

# service iptables stop

1.先关闭防火墙

# vi /etc/sysconfig/iptables

2.打开/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 21 -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

例:如果要增加哪个端口就直接 如下加ftp端口21:

在REJECT行之前添加如下代码:

-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 21 -j ACCEPT

# service iptables start

或 /etc/init.d/iptables restart

3.保存和关闭文件,重启防火墙

——————————————

第二步:关闭SELINUX

# vi /etc/selinux/config

#SELINUX=enforcing #注释掉

#SELINUXTYPE=targeted #注释掉

SELINUX=disabled #增加

:wq #保存,关闭

shutdown -r now #重启系统

——————————————

第三步:【安装zip解压软件】

#yum install -y unzip zip (先安装zip程序)

# zip -r data.zip data (将data文件夹压缩成了data.zip格式)

# zip -r yasuo.zip abc.txt dir1 (我想把一个文件abc.txt和一个目录dir1压缩成为yasuo.zip:)

# unzip yasuo.zip (我下载了一个yasuo.zip文件,想解压缩:)

# unzip abc?.zip (我当前目录下有abc1.zip,abc2.zip和abc3.zip,我想一起解压缩它们:注释:?表示一个字符,如果用*表示任意多个字符。)

# unzip -v large.zip (我有一个很大的压缩文件large.zip,我不想解压缩,只想看看它里面有什么)

# unzip -t large.zip (我下载了一个压缩文件large.zip,想验证一下这个压缩文件是否下载完全了)

# unzip -j music.zip (我用-v选项发现music.zip压缩文件里面有很多目录和子目录,并且子目录中其实都是歌曲mp3文件,我想把这些文件都下载到第一级目录,而不是一层一层建目录)

# ls -l (查看所属的组和用户)

——————————————

第四步:【安装配置Apache】

# yum install httpd (安装Apache)

# chkconfig –levels 235 httpd on (让apache随系统启动而启动)

# service httpd start (启动apache)

或:/etc/init.d/httpd start

# service httpd restart (重启apache)

或:/etc/init.d/httpd restart

Apache配置

# vi /etc/httpd/conf/httpd.conf

(提示:linux下的查找命令 直接/)

ServerTokens OS

修改为:ServerTokens Prod (表示:在出现错误页的时候不显示服务器操作系统的名称)

ServerSignature On

修改为:ServerSignature Off (表示:在错误页中不显示Apache的版本)

Options Indexes FollowSymLinks

 修改为:Options Includes ExecCGI FollowSymLinks (允许服务器执行CGI及SSI,禁止列出目录)

AddHandler cgi-script .cgi

修改为:AddHandler cgi-script .cgi .pl (允许扩展名为.pl的CGI脚本运行)

AllowOverride None

修改为:AllowOverride All (允许.htaccess)

AddDefaultCharset UTF-8

修改为:AddDefaultCharset GB2312  (添加GB2312为默认编码)

Options Indexes MultiViews FollowSymLinks

修改为: Options MultiViews FollowSymLinks(不在浏览器上显示树状目录结构)

DirectoryIndex index.html index.html.var

修改为:DirectoryIndex index.html index.htm Default.html Default.htm index.php Default.php index.html.var (设置默认首页文件,增加index.php)

KeepAlive Off

修改为:KeepAlive On (允许程序性联机)

MaxKeepAliveRequests 100

修改为:MaxKeepAliveRequests 1000 (增加同时连接数)

NameVirtualHost *.80

去掉前面的# 否则每次重启apache就会出现:[warn] _default_ VirtualHost overlap on port 80,the first has precedence

找到 #ServerName www.example.com:80

修改为 ServerName www.osyunwei.com:80 这里设置为你自己的域名,如果没有域名,可以设置为localhost 否则每次重启apache就会出现 httpd: Could not reliably determine the server’s fully qualif domain name, using ::1 for ServerName

[Esc后:wq] 保存退出

# rm -f /etc/httpd/conf.d/welcome.conf /var/www/error/noindex.html # 删除默认测试页

# service httpd restart

虚拟主机案例写法:

# vi /etc/httpd/conf/httpd.conf

进入httpd.conf,然后在文件的最后部分加入如下:

例:

<VirtualHost *:80>
	DocumentRoot /var/www/html/sohu.com
	ServerName www.sohu.com
	DirectoryIndex index.html index.php default.php
</VirtualHost>

DocumentRoot 行的 sohu.com 是网站的文件夹,可以先mkdir sohu.com创建它

ServerName 行的 www.sohu.com 是绑定的域名

——

配置禁止某个IP访问的设置:

# vi /etc/httpd/conf/httpd.conf

进入httpd.conf,在配置主机前加上如下:例:

<VirtualHost 106.15.183.131>
ServerName 106.15.183.131
<Location />
Order Allow,Deny
Deny from all
</Location>
</VirtualHost>

域名配置列表

# vi /etc/hosts (重要:进入添加域名绑定列表)

106.14.197.163 img.fozhu920.com

106.14.197.163 blog.fengshui86.com

106.14.197.163 web001.fozhu920.com

Esc :wq

配置用户组:

在CentOS中建立用户www:

# groupadd www
# useradd --shell /sbin/nologin -g www www

在Apache配置文件httpd.conf中设置User,Group

User www
Group www

设置网站文件的用户和用户组为www

假设网站部署在/var/www/html下

# cd /var/www/html/

# chown -R www:www /var/www/html/sohu.com //前者为用户名称,后者为群组名, *表示全部文件

给新加文件夹 加www用户,加上可读写权限: (注意www用户必须是Apache 相关配置里的user用户: # vi /etc/httpd/conf/httpd.conf)

# chown -R www /var/www/html/sohu.com
# chmod -R 775 /var/www/html/sohu.com

注意 chown与chmod的命令是不同的意思,自己试试

——————————————

第五步:安装配置MySQL

yum install mysql mysql-server #询问是否要安装,输入Y即可自动安装,直到安装完成

/etc/init.d/mysqld start #启动MySQL

chkconfig mysqld on #设为开机启动

cp /usr/share/mysql/my-medium.cnf /etc/my.cnf #拷贝配置文件(注意:如果/etc目录下面默认有一个my.cnf,直接覆盖即可)

# service mysqld restart

2、为root账户设置密码

mysql_secure_installation

注意:先回车,后Y,再输入密码

输入2次密码,回车 根据提示一路Y

最后出现:Thanks for using MySQL!

MySql密码设置完成,重新启动 MySQL:

/etc/init.d/mysqld restart #重启

/etc/init.d/mysqld stop #停止

/etc/init.d/mysqld start #启动

———-

数据库文件以后一般在这里:

/var/lib/mysql

———-

增加mysql连接数

whereis my.cnf

vi /etc/my.cnf

max_connections = 1200 #增加mysql连接数

wait_timeout = 20 #断开超过10秒的连接

=========以下mysql关于修复表示例:

mysql -u root -p (登陆mysql服务器方式)

vi /etc/my.cnf (编辑mysql设置)

max_connections = 1200 (my.cnf里 增加mysql连接数)

wait_timeout = 20 (my.cnf里 断开超过10秒的连接)

whereis my.cnf (常用查找文件命令)

/var/lib/mysql/

mysql -u root -p

mysql> use wordpress;

mysql> repair table wp_options; (修复表)

mysql> show databases; (看看有哪些数据库)

—————————–

mysql数据库中的某个表【修复方法】

# mysqlcheck -u root -p 110xunren 检查数据库表有无问题

# mysqldump -u root -p 110xunren > 110xunren.sql 备份数据库表

# mysqlcheck -u root -p 110xunren –auto-repair 修复表

每次都要输入mysql密码哦

以下是查

# mysql -u root -p

Enter password:

mysql> use wordpress;

mysql> select * from wp_posts;

ERROR 145 (HY000): Table ‘./wordpress/wp_posts’ is marked as crashed and should be repaired

mysql> Bye

修复 MySQL 数据库数据表问题可以由 mysqlcheck 来解决,先用 mysqlcheck 查看一下:

# mysqlcheck -u root -p wordpress

Enter password:

然后添加 –auto-repair 参数自动修复,最好修复前备份一下数据库:

# mysqldump -u root -p wordpress > wordpress.sql

Enter password:

# mysqlcheck -u root -p wordpress –auto-repair

Enter password:

wordpress.wp_commentmeta

error : Table upgrade required. Please do “REPAIR TABLE `wp_commentmeta`” or dump/reload to fix it!

wordpress.wp_comments

error : Table upgrade required. Please do “REPAIR TABLE `wp_comments`” or dump/reload to fix it!

wordpress.wp_links

error : Table upgrade required. Please do “REPAIR TABLE `wp_links`” or dump/reload to fix it!

wordpress.wp_options

error : Table upgrade required. Please do “REPAIR TABLE `wp_options`” or dump/reload to fix it!

wordpress.wp_postmeta

error : Table upgrade required. Please do “REPAIR TABLE `wp_postmeta`” or dump/reload to fix it!

wordpress.wp_posts

error : Table upgrade required. Please do “REPAIR TABLE `wp_posts`” or dump/reload to fix it!

wordpress.wp_term_relationships OK

wordpress.wp_term_taxonomy

error : Table upgrade required. Please do “REPAIR TABLE `wp_term_taxonomy`” or dump/reload to fix it!

wordpress.wp_terms

error : Table upgrade required. Please do “REPAIR TABLE `wp_terms`” or dump/reload to fix it!

wordpress.wp_usermeta

error : Table upgrade required. Please do “REPAIR TABLE `wp_usermeta`” or dump/reload to fix it!

wordpress.wp_users

error : Table upgrade required. Please do “REPAIR TABLE `wp_users`” or dump/reload to fix it!

Repairing tables

wordpress.wp_commentmeta OK

wordpress.wp_comments OK

wordpress.wp_links OK

wordpress.wp_options OK

wordpress.wp_postmeta OK

wordpress.wp_posts OK

wordpress.wp_term_taxonomy OK

wordpress.wp_terms OK

wordpress.wp_usermeta OK

wordpress.wp_users OK

service httpd restart

service mysqld restart

——————————————

第六步:安装配置PHP5

1、安装PHP5

yum install php

根据提示输入Y直到安装完成

2、安装PHP组件,使 PHP5 支持 MySQL

yum install php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt

这里选择以上安装包进行安装

根据提示输入Y回车

/etc/init.d/mysqld restart #重启MySql

/etc/init.d/httpd restart #重启Apche

3、php配置

vi /etc/php.ini #编辑

date.timezone = PRC #在946行 把前面的分号去掉,改为date.timezone = PRC

disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid, posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname

#在386行 列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。

expose_php = Off #在432行 禁止显示php版本的信息

magic_quotes_gpc = On #在745行 打开magic_quotes_gpc来防止SQL注入 (改过)

short_open_tag = ON #在229行支持php短标签

open_basedir = .:/tmp/ #在380行 设置表示允许访问当前目录(即PHP脚本文件所在之目录)和/tmp/目录,可以防止php木马跨站,如果改了之后安装程序有问题(例如:织梦内容管理系统),可以注销此行,或者直接写上程序的目录/data/www.osyunwei.com/:/tmp/ (注意这步有可能会使网站出问题)

:wq! #保存退出

service mysqld start

/etc/init.d/mysqld restart #重启MySql

/etc/init.d/httpd restart #重启Apche

测试篇

cd /var/www/html

vi index.php #输入下面内容

:wq! #保存退出

# chown -R www /var/www/html/sohu.com/phpmyadmin

# chmod -R 775 /var/www/html/sohu.com/phpmyadmin

chown -R www /var/www/html/sohu.com

chown -R 775 /var/www/html/sohu.com

========================

【phpmyadmin问题】

Cannot start session without errors, please check errors given in your PHP and/or webserver log file and configure your PHP installation properly

https://segmentfault.com/1190000000617578

【linux下载命令】

wget http://www.linuxde.net/testfile.zip

详细说明:http://man.linuxde.net/wget

wget http://www.waimao6.com/wordpress.zip

【移动wordpress后台登录界面没反应的情况】

解决方案:

第一步:

chown -R mysql:mysql /var/lib/mysql 修改用户组和用户

第二步:

chmod -R 755 /var/lib/mysql 修改文件读写权限(注意权限)

chmod -R 777 /var/lib/mysql/mysql.sock (注意mysql.sock得777权限)

第三步:

mysqladmin -u root -p flush-tables 因为新搬来的数据库这时只能读,还不能写,这个很重要!

例:

chown -R mysql:mysql /var/lib/mysql

chmod -R 755 /var/lib/mysql/xunren99

chmod 666 /var/lib/mysql

chmod -R 755 /var/lib/mysql

chmod -R 777 /var/lib/mysql/mysql.sock

【权限值对照片表】

444 r–r–r–

600 drw——-

644 drw-r–r–

666 drw-rw-rw-

700 drwx——

744 drwxr–r–

755 drwxr-xr-x

777 drwxrwxrwx

chmod -R 644 /data/common.inc.php

转自:http://www.liuzhongwei.com/page/1004.html

声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。