我也遇到了类似的问题,无缘无故的,同一个方法数据进数据库就那么一个方法接口,但是有的数据能看到日志参数打印,有的数据就看不到日志打印,很是奇怪,无从下手
将Mac更新到Catalina之后,PHP Class 'ZipArchive' not found
如果是windows下面,直接修改php.ini里面的php_zip.dll前面的分号去掉即可;
如果是linux下面,那就直接安装zip拓展就行了.
如果是yum安装的php就很好办.
先看一下php装在哪里:
需要先 关闭macOS的SIP功能 ,然后执行:
添加php扩展
在/etc/php.ini中添加:
Mac OS PHP安装Zip拓展
我认为可以运行的. 不过要稍微配置下
将php解压到tomcat的根目录下,将文件夹名字改为php
把php.exe所在的路径加入到path中.
将php.ini-development 复制一份.改名php.ini
打开 extension_dir = "ext" 这个选项
修改cgi.force_redirect 为这样 cgi.force_redirect = 0
修改tomcat/conf/context.xml文件
将加上 privileged="true" 属性即:
在中加入
php
org.apache.catalina.servlets.CGIServlet
clientInputTimeout
debug
executable
D:\tomcat\php\php-cgi.exe
passShellEnvironment
true
cgiPathPrefix
WEB-INF/phpbin
/phpbin/*
重启tomcat服务:
在webapps\ROOT\WEB-INF 下新建一个phpbin的文件夹
在下面新建一个index.php
php phpinfo();? 如果还有不懂的可以去后盾人找找相关的教学视频看看,多看看不就懂得懂了,希望对你有用,给个采纳吧,谢谢
可以运行的. 不过要稍微配置下
修改cgi.force_redirect 为这样 cgi.force_redirect = 0
将Context 加上 privileged="true" 属性即:Context privileged="true"
在web-app中加入
servlet
servlet-namephp/servlet-name
servlet-classorg.apache.catalina.servlets.CGIServlet/servlet-class
init-param
param-nameclientInputTimeout/param-name
/init-param
param-namedebug/param-name
param-value0/param-value
param-nameexecutable/param-name
param-valueD:\tomcat\php\php-cgi.exe/param-value
param-namepassShellEnvironment/param-name
param-valuetrue/param-value
param-namecgiPathPrefix/param-name
param-valueWEB-INF/phpbin/param-value
/servlet servlet-mapping
url-pattern/phpbin/*/url-pattern
/servlet-mapping
php phpinfo();?
第一段:安装和系统环境变量设置
将安装后的路径设置到系统环境变量path中.
第二段:配置步骤:
将php.ini-development复制一份同一目录下,命名为php.ini
①.设置extension_dir参数:
①.设置cgi.force_redirect参数:
cgi.force_redirect = 0
给Context增加属性privileged="true",修改后的Context元素属性如下所示:
Context privileged="true"
在servlet和servlet-mapping之间增加如下的内容:(注意,注释不能放到配置项里面,否则启动报错)
!—Add to support PHP Perl --
servlet-namecgi/servlet-name
param-valueWEB-INF/cgi-bin/param-value
/servlet
param-valueWEB-INF/php-bin/param-value
servlet-mapping
url-pattern/php-bin/*/url-pattern
url-pattern/cgi-bin/*/url-pattern
备注:
①.、我们配制了两个servlet,分别是php、CGI
指向CGI程序执行器,其实就一可被调用的可执行程序.(这里带全路径,好像不带路径也可以,因为path环境变量里已经配置了),记住不要用php.exe.
如果没有配置,缺省就是调用perl执行程序.
这里将perl脚本配置的是指向webapps/web-inf/cgi-bin目录下.
PHP的脚本指向的是webapps/web-inf/php-bin目录下.
这里如果请求的资源是/php-bin/*则,指向php服务程序,如果是/cgi-bin/*则指向cgi服务程序.
第三段:测试
①.、分别将如下的test.php和test.cgi测试程序放到webapps\ROOT\WEB-INF\php-bin和webapps\ROOT\WEB-INF\cgi-bin目录下.
其中test.php内容如下:
Test.cgi内容如下:
# filename: test1.cgi
print "Content-type: text/html\n\n";
print "Hello, world!\n"
浏览器地址栏输入:
如果显示如下,则说明PHP设置正确.
echo "hello World!\n\n";
针对上面的程序,如果配置中使用的是PHP.exe,则只能现实两行"hello world!", 第一行总是莫名其妙地丢失.而且对php-info()函数,第一行也会丢失.
(很多文档中都提到这个问题,其实就是因为用错了程序.)
如果显示"hello world!",则说明cgi设置正确.
tomcat可以运行php,不过需要配置一下.
方法如下:
把php.exe所在的路径加入到path中
将php.ini-development?复制一份.改名php.ini
打开 extension_dir = "ext"?这个选项
修改cgi.force_redirect?为这样 cgi.force_redirect?= 0
将Context?加上 privileged="true"?属性即:Context privileged="true"
/servlet?servlet-mapping
在webapps\ROOT\WEB-INF?下新建一个phpbin的文件夹
php?phpinfo();?
Tomcat简介
php简介
计算机编程语言(Hypertext Preprocessor)
PHP,一个嵌套的缩写名称,是英文超级文本预处理语言(PHP:Hypertext?Preprocessor)的缩写.PHP?是一种?HTML?内嵌式的语言,PHP与微软的ASP颇有几分相似,都是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,现在被很多的网站编程人员广泛的运用.
以上就是土嘎嘎小编为大家整理的catalina时缺少php的简单介绍catalina时缺少php的简单介绍相关咨询咨询主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!