从安装PHP到第一个tomcat执行的hello world其实没那么难
2024-09-01 03:15:55
001
初入门的朋友问我为什么她的PHP老是不能安装运行成功,作为一个乐(shi)于(li)助(liao)人(mei)的半程序员,
自然是要好好研究然后手把手教妹纸了!
002
话不多说,进入正题
为了公平公正公开,我新开了个空的虚拟机,一切从零开始安装的
电脑操作系统位64位 win10,其他系统未经测试可能有未知问题
开始---
- 首先,没有什么比下载并……解压一个php更重要的了(是的,并不需要执行安装程序什么的,解压就好)
天生习惯,就是喜欢最新版的软件,下载后解压到本地。
没错,就是这货以及解压后的文件
- 然后是环境变量配置,没什么好说的,在Path后面加上php的地址
配置环境变量
用命令行执行php -v 可发现php安装成功!
验证php安装
至此,我们可以看到php已经装好了,然后就是配置tomcat了
- 接着下载tomcat并解压,这里我用的是8.5.23版本,大同小异,推荐使用6.0以上版本tomcat
解压好后修改tomcat的conf下的web.xml文件,如图在web.xml文件中的web-app标签里加入以下内容:
<listener>
<listener-class>php.java.servlet.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>PhpJavaServlet</servlet-name>
<servlet-class>php.java.servlet.PhpJavaServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>PhpCGIServlet</servlet-name>
<servlet-class>php.java.servlet.fastcgi.FastCGIServlet</servlet-class>
<init-param>
<param-name>prefer_system_php_exec</param-name>
<param-value>On</param-value>
</init-param>
<init-param>
<param-name>php_include_java</param-name>
<param-value>Off</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>PhpJavaServlet</servlet-name>
<url-pattern>*.phpjavabridge</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>PhpCGIServlet</servlet-name>
<url-pattern>*.php</url-pattern>
</servlet-mapping>
以及在welcome-file-list标签内加入
<welcome-file>index.php</welcome-file>
web-app
welcome-file-list
- OK,以上都简单,关键的一步的来了,
tomcat运行在JVM上,要能解析php还得下载几个jar包,点击下载jar包
链接:http://pan.baidu.com/s/1sloLuHJ 密码:kxjs
将下载好的JavaBridge.jar、php-servlet.jar和php-script.jar复制到tomcat的lib目录下;
至此,所有配置完成,在tomcat的webapp目录下新建一个php目录,php目录下新建一个index.php文件
<!DOCTYPE html>
<html>
<head>
<title>hello world</title>
</head>
<body>
<?php
echo "hello world!我的第一段 PHP 脚本!";
?>
</body>
</html>
进入tomcat bin目录启动tomcat,就可以正常访问尼德php项目了
FAQ
Q:为什么tomcat启动不成功?
A:tomcat依赖jvm,无法启动时请检查JAVA_HOME,CATALINA_HOME是否配置以及path是否配置jdk路径,还可打开一个命令行,将startup.bat文件拖至命令行回车,可查看启动日志
作者:不玩藤球的猫
链接:https://www.jianshu.com/p/6ed8b1ae275a
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
最新文章
- shell实现ping命令查看哪些主机在线
- 如何自定义jupyter notebook的主题
- 张艾迪(创始人): 整合全新的UIW.AD概念
- hdu5548
- Cogs 1298.通讯问题
- 一键分享到新浪微博、腾讯微博、搜狐微博、人人网、开心网、百度收藏等js代码大全
- js之form表单的获取
- 跨容器Hybrid离线组件方案
- dfs练习
- 使用Crowd集成Confluence与JIRA
- axd文件
- 运维ip语法,DNS配置方法
- Flume概念与原理、与Kafka优势对比《转》
- threading:线程创建、启动、睡眠、退出
- 教你如何在win7中安装cygwin64
- ssh 制作免密登录(免密登录多台服务器)
- React native 之android的图标和启动图片
- Graphviz 环境变量设置
- hdu 4352 XHXJ&#39;s LIS 数位dp+状态压缩
- OC NSNumber和NSValue和NSDate和NSData