centos搭建apache,centos搭建网站
大家好,今天给各位分享centos搭建apache的一些知识,其中也会对centos搭建网站进行解释,文章篇幅可能偏长,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在就马上开始吧!
CentOS 系统上安装 Apache 完成步骤
访问Apache官方站点获取最新源代码压缩包。
替换下载的Apache软件包名称于命令中。
命令安装Apache至“/usr/local/apache2”目录,并启用共享模块、头文件和MIME魔术功能,自定义选项。
执行命令编译并安装Apache。注意:若系统已安装旧版Apache,需先停止旧版本再安装新版本。
执行命令启动Apache。在浏览器访问“your_server_IP/”检查Apache安装是否成功。
步骤简洁明了,希望对在CentOS系统上安装Apache的您有所帮助。
如何在Linux下搭建apache服务器
准备篇:
1、配置防火墙,开启80端口、3306端口
vi/etc/sysconfig/iptables
-A INPUT-m state--state NEW-m tcp-p tcp--dport 80-j ACCEPT#允许80端口通过防火墙
-A INPUT-m state--state NEW-m tcp-p tcp--dport 3306-j ACCEPT#允许3306端口通过防火墙
备注:很多网友把这两条规则添加到防火墙配置的最后一行,导致防火墙启动失败,
正确的应该是添加到默认的22端口这条规则的下面
如下所示:
##############################添加好之后防火墙规则如下所示##############################
# 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#重启系统
安装篇:
一、安装Apache
yum install httpd#根据提示,输入Y安装即可成功安装
/etc/init.d/httpd start#启动Apache
备注:Apache启动之后会提示错误:
正在启动 httpd:httpd: Could not reliably determine the server's fully qualif domain name, using::1 for ServerName
解决办法:
vi/etc/httpd/conf/httpd.conf#编辑
找到#ServerName www.example.com:80
修改为 ServerName www.osyunwei.com:80#这里设置为你自己的域名,如果没有域名,可以设置为localhost
:wq!#保存退出
chkconfig httpd on#设为开机启动
/etc/init.d/httpd restart#重启Apache
二、安装MySQL
1、安装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,直接覆盖即可)
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#启动
三、安装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
配置篇
一、Apache配置
vi/etc/httpd/conf/httpd.conf#编辑文件
ServerTokens OS在44行修改为:ServerTokens Prod(在出现错误页的时候不显示服务器操作系统的名称)
ServerSignature On在536行修改为:ServerSignature Off(在错误页中不显示Apache的版本)
Options Indexes FollowSymLinks在331行修改为:Options Includes ExecCGI FollowSymLinks(允许服务器执行CGI及SSI,禁止列出目录)
#AddHandler cgi-script.cgi在796行修改为:AddHandler cgi-script.cgi.pl(允许扩展名为.pl的CGI脚本运行)
AllowOverride None在338行修改为:AllowOverride All(允许.htaccess)
AddDefaultCharset UTF-8在759行修改为:AddDefaultCharset GB2312(添加GB2312为默认编码)
Options Indexes MultiViews FollowSymLinks在554行修改为 Options MultiViews FollowSymLinks(不在浏览器上显示树状目录结构)
DirectoryIndex index.html index.html.var在402行修改为:DirectoryIndex index.html index.htm Default.html Default.htm
index.php Default.php index.html.var(设置默认首页文件,增加index.php)
KeepAlive Off在76行修改为:KeepAlive On(允许程序性联机)
MaxKeepAliveRequests 100在83行修改为:MaxKeepAliveRequests 1000(增加同时连接数)
:wq!#保存退出
/etc/init.d/httpd restart#重启
rm-f/etc/httpd/conf.d/welcome.conf/var/www/error/noindex.html#删除默认测试页
二、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!#保存退出
/etc/init.d/mysqld restart#重启MySql
/etc/init.d/httpd restart#重启Apche
测试篇
cd/var/www/html
vi index.php#输入下面内容
<?php
phpinfo();
?>
:wq!#保存退出
在客户端浏览器输入服务器IP地址,可以看到如下图所示相关的配置信息!
注意:apache默认的程序目录是/var/www/html
权限设置:chown apache.apache-R/var/www/html
至此,CentOS 6.4安装配置LAMP服务器(Apache+PHP5+MySQL)教程完成!
如何在CentOS 7服务器上利用Apache安装并hpMyAdmin
在CentOS上安装phpMyAdmin,首先需要架设一台Web服务器(如Apache或nginx),安装好MySQL/MariaDB数据库和PHP。根据你的偏好和需求,你可以从LAMP和LEMP中选择一种安装。
另一个要求是允许在你的CentOS上安装EPEL库。在CentOS6或7上安装phpMyAdmin可以通过以下命令实现。在CentOS 7上:$ sudo yum install phpmyadmin。如果需要php-mcrypt扩展,可以使用:$ sudo yum install phpmyadmin php-mcrypt。
在CentOS 7上配置phpMyAdmin,其默认情况下只允许从回环地址(127.0.0.1)访问。为了能远程连接,需要改动它的配置文件。用文本编辑器打开phpMyAdmin的配置文件(路径:/etc/httpd/conf.d/phpMyAdmin.conf),找出并注释掉带有"Require ip XXXX"字样的代码行。会有四处这样的代码行,用"Require all granted"取而代之。重新改动过的配置文件如下所示。$ sudo vi/etc/httpd/conf.d/phpMyAdmin.conf。
AddDefaultCharset UTF-8
# Apache 2.4
#Require ip 127.0.0.1
#Require ip::1
Require all granted
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from::1
# Apache 2.4
#Require ip 127.0.0.1
#Require ip::1
Require all granted
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from::1
最后,重启httpd使改动生效:$ sudo systemctl restart httpd。
在CentOS 6上配置phpMyAdmin,默认情况下是禁止从每个IP地址访问的。为了能远程连接,你需要改动它的配置。用文本编辑器打开phpMyAdmin的配置文件(路径:/etc/httpd/conf.d/phpmyadmin.conf),找出并注释掉"Deny from all"字样的代码行。然后把"Allow from 127.0.0.1"字样的代码行改成"Allow from 0.0.0.0"。重新改动过的配置文件如下所示。$ sudo vi/etc/httpd/conf.d/phpmyadmin.conf。
Order Deny,Allow
# Deny from all
Allow from 0.0.0.0
下一步是将phpMyAdmin的配置文件用blowfish加密工具加密。这一步需要加密cookie里的密码来作为基于cookie的部分认证。用文本编辑器打开如下路径所示的文件并且用blowfish设置一个随机密码,如下所示:$ sudo vi/usr/share/phpmyadmin/config.inc.php。
$cfg['blowfish_secret']='kd5G}d33aXDc50!';/* YOU MUST FILL IN THIS FOR COOKIE AUTH!*/
最后,重启httpd使改动生效:$ sudo service httpd restart(CentOS 6)或$ sudo systemctl restart httpd(CentOS 7)。
测试phpMyAdmin是否设置成功,访问这个页面:。你应该能通过Web界面来记录下任何MySQL用户(比如root)和管理MySQL/MariaDB的数据库/表。
疑难解答:在CentOS上安装phpMyAdmin的过程中遇到的一些问题解决方法。
当你在浏览器里尝试连接phpMyAdmin页面的时候,出现"403 Forbidding"错误:"You don't have permission to access/phpMyAdmin on this server."。这是因为phpMyAdmin默认阻止了IP地址远程连接。要修复这种错误,需要编辑它的配置文件来允许远程连接。具体操作见上述步骤。
当你连接phpMyAdmin页面时,出现"The configuration file now needs a secret passphrase(blowfish_secret)."信息,并且你无法登录。要修复这种错误,需要编辑/usr/share/phpmyadmin/config.inc.php这个文件来添加一个随机的blowfish密码,然后重启httpd,如下所示:$ sudo service httpd restart(CentOS 6)或$ sudo systemctl restart httpd(CentOS 7)。$cfg['blowfish_secret']='kd5G}d33aXDc50!';/* YOU MUST FILL IN THIS FOR COOKIE AUTH!*/
当你连接phpMyAdmin页面时,出现"Cannot load mcrypt extension. Please check your PHP configuration"错误信息。要修复这种错误,需要安装下面这个包,然后重启httpd:$ sudo yum install php-mcrypt。