小编Mat*_*att的帖子

如何在PHP中显示Apache的默认404页面

我有一个webapp需要处理URI以查找数据库中是否存在页面.我没有问题使用.htaccess将URI指向应用程序:

Options +FollowSymlinks
RewriteEngine on
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^(.*)$ index.php?p=$1 [NC]
Run Code Online (Sandbox Code Playgroud)

我的问题是,如果页面不存在,我不想使用用PHP编写的自定义404处理程序,我想显示默认的Apache 404页面.当确定页面不存在时,有没有办法让PHP将执行权交还给Apache?

php apache .htaccess http-status-code-404

15
推荐指数
2
解决办法
2万
查看次数

MySQL:快速查找另一个表中没有相应行的行

我在MySQL中有两个相关的表.我想在表A中找到没有相应行表B的行.这里的手册和其他线程推荐这样做:

SELECT a.id
  FROM a LEFT JOIN b ON a.id = b.a_id
  WHERE b.id IS NULL;
Run Code Online (Sandbox Code Playgroud)

但是,这很慢.在我的例子中,表A的行少于5000行,表B的行数约为40000,但此查询最多需要8分钟.

有谁知道如何更快地实现这一目标?

非常感谢,亚光

编辑:索引是问题.创建一个后,查询将在10微秒内运行.

mysql performance

4
推荐指数
1
解决办法
1683
查看次数

get_browser的替代品?

我一直在使用php的get_browser()功能对我的用户进行一些轻量级分析,主要用于调试.然而,看来browsercap.ini的维护者,为get_browser提供动力的数据已经退出了项目,虽然有些人似乎正在重新启动它,但数据变得非常陈旧.他们正在谈论完全改写,所以我担心它会再花一段时间才能重新开始.

有人知道不依赖于browsercap.ini的替代方案吗?

编辑:我很抱歉我的问题含糊不清.我需要这个用于调试,而不是分析.我在Web应用程序中的"报告错误"工具中使用它,它有很多跨浏览器的错误,但我无法控制客户端计算机.这是一个非常古老的应用程序(最初是为IE6构建的),我们一直在尽最大努力使其更新,但跨浏览器问题有时很难找到.

再次感谢你

php httpbrowsercapabilities

2
推荐指数
1
解决办法
6279
查看次数

设置全局CURL超时

我使用专有的第三方Drupal模块,通过curl查询第三方服务.这项服务最近有点不稳定,这使我的页面加载速度变慢了,当我有大量的流量时,我正在进行max_connections.

此扩展程序查询的信息并不重要,但重要的是我不能只删除该模块.目前,我通过修补模块来修复它,为请求添加一个curl超时:

curl_setopt($ch, CURLOPT_TIMEOUT, 1);
Run Code Online (Sandbox Code Playgroud)

但是,我不想将黑客留在原地,因为它会在下次更新时消失,因为问题是间歇性的,它不会出现在测试中.

有没有办法在php.ini设置或PHP中通过代码全局设置超时(我可以放入自定义模块)?

任何帮助表示赞赏,

谢谢

php curl

2
推荐指数
1
解决办法
5861
查看次数