Go to main content

Textpattern CMS support forum

You are not logged in. Register | Login | Help

#1 2026-04-02 19:16:55

neptho
Member
From: A cold, dark place.
Registered: 2006-02-01
Posts: 57

Broke upgrading to 4.9.1 - search loops, 404 page display all sections

I should have done my due diligence, but I hadn’t bothered because everything seemed to work from top-down.

I’ve got a few issues I didn’t have before the upgrade from 4.8-

First, the 404 page now shows sections that aren’t linked from the stock template menu-

https://domain.com/thisisnotapage

E.G. “Article” for the articles , “Software”, “Thanks”, which are all pages not referenced in the menu options itself, but sections separate for response from such thing as hitting my contact page, my 20-year-abandoned software page, et al.

Also, search randomly breaks oddly.

For instance, I get a response of one article for ebtables, and it loops back upon itself while never displaying it:

https://domain.com/?q=ebtables

Searching for other queries, I eventually get my diagnostic timeout error at 30 seconds, where it’s looping back upon itself.

https://domain.com/?q=holwegner

—-

I’ll admit that at one point I was pretty deep into TXP, but, uhm, that was also about 20 years ago at this stage. I’ll try digging into the templates themselves, but I’m kind of lost where to start.

Cheers, everyone!

Last edited by neptho (2026-04-02 19:30:27)

Offline

#2 2026-04-02 19:21:51

neptho
Member
From: A cold, dark place.
Registered: 2006-02-01
Posts: 57

Re: Broke upgrading to 4.9.1 - search loops, 404 page display all sections

Of course, diagnostics are fine, other than being warned about having PHP embedded in my pages. If it hasn’t been hacked in the last 20 years, it probably won’t be (famous last words)

Textpattern version: 4.9.1 (b9e0099b74793ee5f4ba08ee2892ee34fbb5a1e93f57a770)
Last update: 2026-03-11 21:03:26/2026-03-11 21:02:39
Textpattern path: __TXP-ROOT/textpattern
Article URL pattern: id_title
Production status: live
PHP version: 8.2.29
GD Graphics Library: 2.3.3; Supported formats: GIF, JPEG, PNG, WebP, AVIF.
Server time zone: America/Boise
Server local time: 2026-04-02 13:17:49
Daylight Saving Time enabled?: 1
Automatically adjust Daylight Saving Time setting?: 1
Time zone (GMT offset in seconds): America/Boise (-25200)
MySQL: 11.8.3-MariaDB-0+deb13u1 from Debian (-- Please help get to 10k stars at https://github.com/MariaDB/Server) 
Database server time: 2026-04-02 15:17:49
Database server time offset: 3600 s
Database server time zone: SYSTEM
Database session time zone: SYSTEM
Locale: en_US.UTF-8
Site / Admin language: en-us / en-us
Web server: Apache
PHP server API: fpm-fcgi
PHP SSL version: OpenSSL 3.0.16 11 Feb 2025
RFC 2616 headers: 0
Server OS: Linux 6.1.0-21-amd64
Admin-side theme: classic 4.9.1
Active plugins: 
	com_connect-4.6.0
	etc_cache-0.3
	etc_date-0.4.6
	etc_pagination-0.4.7b
	pap_comconnect-0.1.2
	zem_ir_05-ssh-0.5-ssh (modified)

Pre-flight check: 
------------------------
You have PHP enabled in your articles/pages. To improve security from potentially malicious and damaging code, consider switching these off via the Preferences panel, unless you absolutely need to embed PHP functionality in your site.
------------------------

.htaccess file contents: 
------------------------
# BEGIN Textpattern
#DirectoryIndex index.php index.html

#Options +FollowSymLinks
#Options -Indexes
#ErrorDocument 403 default

<IfModule mod_rewrite.c>
    RewriteEngine On
    #RewriteBase /relative/web/path/
    #Old, old, old rollator hack.
    RewriteRule ^go/(.*) /go.php?website=$1 [R=301,L]
    RewriteRule ^article/43 /128/music [R=301,l]
    RewriteRule ^view/(.*) /article/$1 [R=301,L]

    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^(.+) - [PT,L]

    RewriteCond %{REQUEST_URI} !=/favicon.ico
    RewriteRule ^(.*) index.php

    RewriteCond %{HTTP:Authorization}  !^$
    RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]
</IfModule>

#php_value register_globals 0

<IfModule mod_mime.c>
    AddType image/svg+xml  svg svgz
    AddEncoding gzip       svgz
</IfModule>
# END Textpattern

------------------------

Last edited by neptho (2026-04-02 19:22:04)

Offline

#3 2026-04-02 19:23:59

Bloke
Developer
From: Leeds, UK
Registered: 2006-01-29
Posts: 12,544
Website GitHub

Re: Broke upgrading to 4.9.1 - search loops, 404 page display all sections

The 404s might be the new setting in Prefs regarding the trailing slash. Try that as a starting point.

Not sure about the search terms. The search results tag has been renamed but it’s only advisory at this stage.

I would temporarily switch debugging mode on and see if you get any errors or warnings. That might point to plugins with unregistered tags or things that need attention in the templates.


The smd plugin menagerie — for when you need one more gribble of power from Textpattern. Bleeding-edge code available on GitHub.

Hire Txp Builders – finely-crafted code, design and Txp

Offline

#4 2026-04-02 19:28:57

neptho
Member
From: A cold, dark place.
Registered: 2006-02-01
Posts: 57

Re: Broke upgrading to 4.9.1 - search loops, 404 page display all sections

Cheers, Bloke.

Changing options for the preference page for the trailing slash doesn’t seem to matter.

Search is recursing on itself and eventually errors. I’ll have to check what the most recent sections use.

</txp:article> ->  Textpattern Notice: Too many nested form references while parsing form search_results. while parsing form search_results on page default

Tag error: <txp:search_result_count /> ->  Textpattern Notice: tag is deprecated while parsing form search_results on page default
textpattern/publish/taghandlers.php:3553 trigger_error()
txp_deprecate()
textpattern/vendors/Textpattern/Tag/Registry.php:161 call_user_func()
textpattern/lib/txplib_publish.php:559 Textpattern\Tag\Registry->processAttr()
textpattern/lib/txplib_publish.php:429 processTags()
textpattern/publish/taghandlers.php:2541 parse()
if_items_count()
textpattern/vendors/Textpattern/Tag/Registry.php:140 call_user_func()
textpattern/lib/txplib_publish.php:540 Textpattern\Tag\Registry->process()
textpattern/lib/txplib_publish.php:429 processTags()
p.

Last edited by neptho (2026-04-02 19:31:16)

Offline

#5 2026-04-02 19:46:23

Bloke
Developer
From: Leeds, UK
Registered: 2006-01-29
Posts: 12,544
Website GitHub

Re: Broke upgrading to 4.9.1 - search loops, 404 page display all sections

The recursion is probably two <txp:article> tags on your default page being called instead of just one inside your <txp:if_search> container. Or your search _results form contains a <txp: article> tag.


The smd plugin menagerie — for when you need one more gribble of power from Textpattern. Bleeding-edge code available on GitHub.

Hire Txp Builders – finely-crafted code, design and Txp

Offline

#6 2026-04-02 19:56:19

neptho
Member
From: A cold, dark place.
Registered: 2006-02-01
Posts: 57

Re: Broke upgrading to 4.9.1 - search loops, 404 page display all sections

Fixed the error_default page. Somewhere along the line, I lost the exclude stanza present in the default render page. Whoops.

<txp:section_list exclude=“article,software,thanks” default_title=’<txp:text item=“home” />’ include_default=“1” wraptag=“ul” break=”“>

Still working on the recursion issue because I only see the txp:artcle referenced once per type. I’m running the stock 4.7.3 with minor modifications as above.

Last edited by neptho (2026-04-02 20:03:20)

Offline

#7 2026-04-02 20:38:47

neptho
Member
From: A cold, dark place.
Registered: 2006-02-01
Posts: 57

Re: Broke upgrading to 4.9.1 - search loops, 404 page display all sections

The templates are so different. So very, very different.

Me go cry now. Hide in corner.

Offline

Board footer

Powered by FluxBB