gpt4 book ai didi

php - 我的虚拟主机正在将 ?PHPSESSID=fgh2h45... 添加到 URL 的末尾

转载 作者:行者123 更新时间:2023-12-02 07:13:38 25 4
gpt4 key购买 nike

我正在使用 iPage.com 主机。为了在他们的主机中使用 PHP session ,我需要在每个页面的开头添加 session_save_path('/home/users/web/.../cgi-bin/tmp');(在我的案例只有 index.php,因为一切都首先通过 index.php)。

现在,他们会自动将 session ID 添加到请求的每个 URL 的末尾,如下所示:website.com/movies/details/?PHPSESSID=4s54kjhdl...

我认为这会导致问题,并会影响 google 索引和 SEO..

如何防止这种情况?

最佳答案

问题不是您的“主机”引起的,PHP 正在附加此数据。具体来说,PHP 配置为将 PHPSESSID 变量附加到 URL 以允许 PHP 跟踪 session 。可以在调用 session_start 之前使用 ini_set 更改相关设置,或者更永久地通过更新 php.ini 文件(尽管由于您是托管的,最后一个选项可能是出去)。 This is a list of the available runtime settings for sessions in PHP .

虽然您可以控制该值是否附加到您的 URL 的末尾,但它是跟踪 session 所必需的。或者,您可以将 PHP 配置为使用 cookie 来跟踪 session ,但是对于拒绝 cookie 的用户来说,要求 cookie 来跟踪 session 可能会破坏您的应用程序。

简而言之,您可以控制 session ID 使其更漂亮(通过将 PHPSESSID 重命名为更易于接受的名称或使值不那么神秘),但除非您想使用 cookie 来维护 session ,否则您将陷入困境您网址上的这个“垃圾”。如果您使用 cookie,一些用户可能无法维持 session 。

要启用基于 cookie 的 session 处理,您可以执行以下任一操作:

// stop PHP from automatically embedding PHPSESSID on local URLs
ini_set('session.use_trans_sid', false);

// only use cookies (no url based sessions)
ini_set('session.use_only_cookies', true);

关于php - 我的虚拟主机正在将 ?PHPSESSID=fgh2h45... 添加到 URL 的末尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3191235/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com