之前都是在windows server2008下搭建PHP运行环境,用IIS+PHP或者PHPstudy,或wamp。今天试了试,在linux下搭建apache+PHP运行环境。感觉还不错。


在Centos 7下搭建Apache + PHP运行环境,,在这里我采用最简单的yum install安装法,我个人不喜欢编译安装,因为麻烦,而且耗时,能够用yum安装搞定的事情我都会优先选择。


1、安装Apache

在Centos中,Apache的名称叫httpd,因为我们要安装的是httpd

yum install httpd

安装完成后,我们的Apache配置文件路径是:/etc/httpd/conf/httpd.conf


2、安装PHP

yum install PHP

安装完成后,我们的PHP配置文件路径是:/etc/PHP.ini


3、测试Apache

安装完成Apache后,我们可以使用http://你的服务器ip/测试访问Apache,如果能显示如下图,则说明Apache已经安装成功。



如果我们测试无法打开这个页面,那么首先要考虑几个情况:


1、是不是开启了iptables防火墙,如果是的话,可以用systemctl stop iptables关闭后再试


2、是不是开启了firewalld防火墙,如果是的话,可以用systemctl stop firewalld关闭后再试


3、是不是开启了SELinux功能,如果是的话,可以用setenforce 0临时关闭SELinux后再试

4、重启Apache 服务

systemctl restart httpd


如果上面三个问题都无关,那么请自行寻找原因。

4、修改Apache默认网站路径


Apache安装好后,默认的网站路径是/var/www/html,也就是说以后我们想部署网站的话,必须把文件放到这个目录下,例如我们下面测试一下。

echo "Hello,Welcome to China~" > /var/www/html/index.html


上面这个命令是在/var/www/html下面创建一个index.html文件,内容是Hello,Welcome to China~,此时我们刷新浏览器,访问我们的Apache网站应该可以看到页面。

Apache安装好后配置文件在哪里吗?没错,就是/etc/httpd/conf/httpd.conf,下面我们用vi或者vim(vim命令编辑文件可以带彩色,容易区分一点)命令来编辑它。


vim /etc/httpd/conf/httpd.conf


打开文件后,我们输入/docu,然后按下回车,这样就可以快速搜索到我们要找到内容。如下图,可以看到有两个/var/www/html的地方,分别是DocumentRoot "/var/www/html"和<Directory "/var/www/html">。我们要修改的就是这两个地方,把/var/www/html修改成我们想要的路径,比如/home/www,那么修改后就是这样的。

重启Apache服务了

systemctl restart httpd


5、测试PHP环境


下面我们来测试一下PHP环境,刚刚我们已经安装了PHP了,那么正常情况下我们可以不用修改PHP的配置。下面我们试试创建一个PHP页面。


echo "<?PHP PHPinfo(); ?>" > /home/www/index.PHP


在浏览器中访问http://你的ip/index.PHP后可以看到如下效果则说明PHP安装成功。




Apache + PHP的运行环境我们就已经搭建起来了,那么问题来了。有些朋友可能会问Apache跟PHP是怎么关联起来的呢?

实际上我们安装PHP的时候,系统已经自动添加了PHP的模块文件到Apache的安装目录下,即/etc/httpd/conf.d,在这个目录下我们可以看到有一个PHP.conf的文件,这个就是Apache关联PHP模块的配置。


在Apache的配置文件最底下一行我们也可以看到IncludeOptional conf.d/*.conf,这句配置就是加载/conf.d下面的所有.conf文件,换句话说,以后我们如果不想直接修改Apache的配置文件httpd.conf的话,我们就可以单独写一个.conf文件放到这个目录下。


PHP的安装目录在/etc/PHP.d,配置文件是/etc/PHP.ini

在Centos 7下搭建Apache + PHP运行环境的更多相关文章

  1. 从iOS应用程序发送帖子到PHP脚本不工作…简单的解决方案就像

    我之前已经做了好几次了但是由于某些原因我无法通过这个帖子…我尝试了设置为_POST且没有的变量的PHP脚本……当它们未设置为发布时它工作精细.这是我的iOS代码:这里是PHP的一大块,POST变量不在正确的位置?我想这对于更有经验的开发人员来说是一个相当简单的答案,感谢您的帮助!解决方法$_POST是一个数组,而不是一个函数.您需要使用方括号来访问数组索引:

  2. IOs Cordova长按显示文本选择放大镜即使禁用文本选择,如何删除?

    是否有任何可能导致此问题的插件?任何帮助深表感谢.Cordova插件:>com.mbppower.camerapreview>cordova-plugin-statusbar>cordova-plugin-whitelist>离子插件键盘>org.apache.cordova.camera>org.apache.cordova.console>org.apache.cordova.device>org.apache.cordova.dialogs>org.apache.cordova.file>org.a

  3. swift学习2 元组 tuples

    swift中出现了一种新的数据结构,非常牛掰的元组tuples如果懂PHP的猿,会发现这个元组和PHP的数组非常类似,同样是可以默认不指定key,也可以指定key目前的学习疑问是,如何进行元组的遍历?

  4. 尝试使用swift mailer,gmail smtp,php发送邮件

    这里是我的代码:在运行时出现此错误…

  5. android – org.apache.cordova.api不存在. PhoneGap 3.0

    我正在尝试将VideoPlayer插件(https://github.com/macdonst/VideoPlayer)添加到我的phonegapAndroid应用程序中.在编译时遇到问题:第25行:解决方法将您的导入更改为:

  6. 如何将android客户端连接到我的笔记本电脑内的Apache服务器(php)的localhost?

    我的笔记本电脑中的localhost-127.0.0.1或android10.0.0.1中的localhost?>那么,如果我想从android访问localhost来调用PHP来运行?哪个ip地址/url我需要放在Android应用程序?我需要在httpconfig中为XAMPP修改任何内容吗?解决方法使用ipconfig在笔记本电脑中找到您的IP地址.在手机中使用该地址而不是127.0.0.1.

  7. android – 在android工作室中的proguard错误

    我想在我的应用程序中使用proguard,我启用它但是当我想生成apk文件时,它给了我这个错误:我正在使用最新版本的sdk23,这是我的gradle文件:怎么了?我在这段代码中做错了什么?谢谢解决方法只需在proguard上添加:

  8. 无法修复Android Proguard返回错误代码1错误

    当我尝试在我的Android应用程序中使用proguard时只需添加到我的project.properties文件,APK导出失败并显示消息Proguard返回错误代码1这是我的project.properties文件这是错误堆栈:解决方法将这些行添加到proguard配置文件(proguard-android.txt)见ProguardTroubleshooting请注意,如果您使用您的配置文件

  9. Phonegap 2.4 Android Proguard配置

    有人有主意吗???

  10. android – 如何在sharedPreferences中分析ANR

    在sharedPreferences中遇到ANR,不知道如何定位问题.以下是trace的三个部分,其他大多数线程都是“WAIT”或“TIMED_WAIT”.由于countdownlatch.await(),“主”线程被阻止.第二个线程“pool-1-thread-1”等待fsync.最后一个是试图读一些东西.我认为第二个线程已经阻塞了主线程,因为如果这个无法完成,它将不会调用countdownla

随机推荐

  1. 在airgapped(离线)CentOS 6系统上安装yum软件包

    我有一个CentOS6系统,出于安全考虑,它已经被空气泄漏.它可能从未连接到互联网,如果有,它很长时间没有更新.我想将所有.rpm软件包放在一个驱动器上,这样它们就可以脱机安装而无需查询互联网.但是,我在测试VM上遇到的问题是,即使指定了本地路径,yum仍然会挂起并尝试从在线存储库进行更新.另外,有没有办法使用yum-utils/yumdownloader轻松获取该包的所有依赖项和所有依赖项?目前

  2. centos – 命名在日志旋转后停止记录到rsyslog

    CentOS6.2,绑定9.7.3,rsyslog4.6.2我最近设置了一个服务器,我注意到在日志轮换后,named已停止记录到/var/log/messages.我认为这很奇怪,因为所有日志记录都是通过rsyslog进行的,并且named不会直接写入日志文件.这更奇怪,因为我在更新区域文件后命名了HUPed,但它仍然没有记录.在我停止并重新启动命名后,记录恢复.这里发生了什么?

  3. centos – 显示错误的磁盘大小

    对于其中一个磁盘,Df-h在我的服务器上显示错误的空白区域:Cpanel表明它只有34GB免费,但还有更多.几分钟前,我删除了超过80GB的日志文件.所以,我确信它完全错了.fdisk-l/dev/sda2也显示错误:如果没有格式化,我该怎么做才能解决这个问题?并且打开文件描述符就是它需要使用才能做到这一点.所以…使用“lsof”并查找已删除的文件.重新启动写入日志文件的服务,你很可能会看到空间可用.

  4. 如何在centos 6.9上安装docker-ce 17?

    我目前正在尝试在centOS6.9服务器上安装docker-ce17,但是,当运行yuminstalldocker-ce时,我收到以下错误:如果我用跳过的标志运行它我仍然得到相同的消息,有没有人知道这方面的方法?

  5. centos – 闲置工作站的异常负载平均值

    我有一个新的工作站,具有不寻常的高负载平均值.机器规格是:>至强cpu>256GB的RAM>4x512GBSSD连接到LSI2108RAID控制器我从livecd安装了CentOS6.564位,配置了分区,网络,用户/组,并安装了一些软件,如开发工具和MATLAB.在启动几分钟后,工作站负载平均值的值介于0.5到0.9之间.但它没有做任何事情.因此我无法理解为什么负载平均值如此之高.你能帮我诊断一下这个问题吗?

  6. centos – Cryptsetup luks – 检查内核是否支持aes-xts-plain64密码

    我在CentOS5上使用cryptsetupluks加密加密了一堆硬盘.一切都很好,直到我将系统升级到CentOS6.现在我再也无法安装磁盘了.使用我的关键短语装载:我收到此错误:在/var/log/messages中:有关如何装载的任何想法?找到解决方案问题是驱动器使用大约512个字符长的交互式关键短语加密.出于某种原因,CentOS6中的新内核模块在由旧版本创建时无法正确读取512个字符的加密密钥.似乎只会影响内核或cryptsetup的不同版本,因为在同一系统上创建和打开时,512字符的密钥将起作用

  7. centos – 大量ssh登录尝试

    22个我今天登录CentOS盒找到以下内容这是过去3天内的11次登录尝试.WTF?请注意,这是我从我的提供商处获得的全新IP,该盒子是全新的.我还没有发布任何关于此框的内容.为什么我会进行如此大量的登录尝试?是某种IP/端口扫描?基本上有4名匪徒,其中2名来自中国,1名来自香港,1名来自Verizon.这只发生在SSH上.HTTP上没有问题.我应该将罪魁祸首子网路由吗?你们有什么建议?

  8. centos – kswap使用100%的CPU,即使有100GB的RAM也可用

    >Linux内核是否应该足够智能,只需从内存中清除旧缓存页而不是启动kswap?

  9. centos – Azure将VM从A2 / 3调整为DS2 v2

    我正在尝试调整前一段时间创建的几个AzureVM,从基本的A3和标准A3到标准的DS2v2.我似乎没有能力调整到这个大小的VM.必须从头开始重建服务器会有点痛苦.如果它有所不同我在VM中运行CentOS,每个都有一个带有应用程序和操作系统的磁盘.任何人都可以告诉我是否可以在不删除磁盘的情况下删除VM,创建新VM然后将磁盘附加到新VM?

  10. centos – 广泛使用RAM时服务器计算速度减慢

    我在非常具体的情况下遇到服务器速度下降的问题.事实是:>1)我使用计算应用WRF>2)我使用双XeonE5-2620v3和128GBRAM(NUMA架构–可能与问题有关!

返回
顶部