簡體   English   中英

如何修復PHP的雙斜杠?

[英]How to fix double slash for PHP?

#AddHandler application/x-httpd-php56 .php

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

Options -MultiViews
AcceptPathInfo On

# multiviews functionality
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^([^/]+)(/?)(.*?)$ $1.php$2$3 [L]

# 1)
# https://www.example.com/city-name/...
# must rewrite to
# https://www.example.com/index/city-name

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([0-9a-z-]+)/?$ index/$1 [NC]

# 2)
# https://www.example.com/city-name/list/category-name/[n,s,c,a]-9-13-1
# must rewrite to
# https://www.example.com/list/city-name/category-name/[n,s,c,a]-9-13-1

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([0-9a-z-]+)/list/([a-z0-9-]+)/([nsca0-9-]+)$ list/$1/$2/$3 [NC]

# 3)
# https://www.example.com/city-name/place/01234/rosemarys-enoteca-trattoria
# must rewrite to
# https://www.example.com/place/01234/rosemarys-enoteca-trattoria

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([0-9a-z-]+)/place/([a-z0-9-]+)/([a-z0-9-]*)$ place/$2 [NC]

我的PHP頁面無法正常工作,導致

https://www.example.com//user/login

請幫助如何修復.htaccess?

嘗試轉義那些斜杠,您的服務器可能會將其解釋為注釋。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM