In Plesk heb je de optie om "FollowSymLinks" uit te schakelen.
FollowSymLinks houdt een veiligheidsrisico in, maar ik meen dat je het nodig hebt voor rewriting (mooie URLS). Dus dat je in plaats van www.mijnsite.nl/product.php?id=123www.mijnsite.nl/product/123 kunt doen. Maar heb je daar per se die FollowSymLinks voor nodig? Of kan het ook zonder? Weet iemand dat?
Ah oké, da's eigenlijk wel jammer. Ik had een kleine stille hoop dat ie een directory ook gewoon naar /test zou forwarden. En maakt het dan nog niets uit of je wel of niet een slash achter de directorynaam zet in de url?
Helaas maakt dat niets uit. Dus om volle dekking te krijgen denk ik dat ik met Thomas mee moet gaan, en gebruik maken van "clever use of game mechanics". Je kunt dat ook tweeledig doen, een ErrorDocument 403 samen met een fallback.
Ik meen dat ik dat "vroeger" via een rewrite condition en een rewrite rule deed. Als het een directory was, dan doorsturen naar /index.php. Maar dan moet je waars. die FollowSymlinks weer inschakelen.
# Enable rewriting.
RewriteEngine on
# Optional: do not allow perusal of directories.
Options -Indexes
# Optional: explicitly enable per-directory rewrites in the .htaccess context.
Options +FollowSymLinks
# Required when not in the webroot. Always use a trailing slash.
RewriteBase /
# To be able to access existing directories and files (standalone scripts).
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
# Redirect everything else to index.php.
# Add QSA to ensure that querystring variables are registered as such.
RewriteRule . index.php [L,QSA]
Mijn stelling was "als het korter kan en het werkt hetzelfde" ;-)
Dat is iets anders dan:
"Werken standalone scripts in de korte oplossing nog?"
"wat hier korter is kost elders mogelijk meer werk"
Als het dus exact hetzelfde werkt, dan kies is de kortere oplossing. Als er verschil in zit, dan kies je uiteraard de correct werkende oplossing. De grote vraag is dus of beide oplossingen dezelfde uitwerking hebben.