.htaccess panel error 500 & href problem with 'Ü'


#1

Hi guys I got two problems.
First of all the .htaccess file. I don’t know, what I’m doing wrong but the panel only works locally. On a server I get Error 500. The URL is https://main-site.de/juwelier/.

# Kirby .htaccess

# rewrite rules
<IfModule mod_rewrite.c>

# enable awesome urls. i.e.:
# http://yourdomain.com/about-us/team
RewriteEngine on

# make sure to set the RewriteBase correctly
# if you are running the site in a subfolder.
# Otherwise links or the entire site will break.
#
# If your homepage is http://yourdomain.com/mysite
# Set the RewriteBase to:
#
RewriteBase /juwelier

# In some enviroments it's necessary to
# set the RewriteBase to:
#
#RewriteBase /

# block text files in the content folder from being accessed directly
RewriteRule ^content/(.*)\.(txt|md|mdown)$ index.php [L]

# block all files in the site folder from being accessed directly
# except for requests to plugin assets files
#RewriteRule ^assets/plugins/([a-zA-Z0-9\.\-_%=]+)/(.*)$ site/plugins/$1/assets/$2 [L,N]
#RewriteCond $1 !^plugins/[a-zA-Z0-9\.\-_%=]+/assets/.*
RewriteRule ^site/(.*) index.php [L]

# block direct access to kirby and the panel sources
RewriteRule ^(kirby|panel\/app|panel\/tests)/(.*) index.php [L]

# make panel links work
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^panel/(.*) panel/index.php [L]

# make site links work
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) index.php [L]

</IfModule>

# Additional recommended values
# Remove comments for those you want to use.
#
# AddDefaultCharset UTF-8
#
# php_flag short_open_tag on

The other problem is:
It is a onepager, so I’m using a scroll-to navigation. One site is called ‘Über uns’, so the scroll to doesnt work because of the ‘Ü’. (I’m convinced, but not sure).

<li><a href="#<?= $item->title() ?>" uk-scroll><?= $item->title()->html() ?></a></li>

This is how I my menu entry looks like. It works for all the other menu entries.


#2

These are 2 different things.

Concerning the first: please check minimum requirements (there’s a typo there: minimum php version is 5.6), and check your server logs to see what the error 500 is about.

As for the second: can you use $item->uid(), or str::slug($item->title()) for both the id and href? This way you shouldn’t have encoding issues.


Kirby 2.5.11 is here!
#3

Thanks for your answer.
The second problem is solved. Thank you for that!

$item->uid() 

worked perfect.

As for the first one:
I checked the error logs and it says my PHP version is too old, but how does this make any sense, because on the main domain there is already a working kirby instance. The panel at the main site works perfectly fine. I will try updating the php version anyway, but first I have to find out how, since it’s not my webspace and I don’t know where it’s hosted.


#4

It means some parts will be ok, others need the latest PHP version. Just make sure you use a supported PHP version. Whilst you’re looking at upgrading, please upgrade to Version 7 (or newer) for faster PHP :wink: