$_SERVER['REQUEST_URI']
は、コンテキストパスでURIを返します。ウェブサイトのベースURLがhttp://localhost:8080/sitename/
ある場合コンテキストパスなしでPHPリクエストURIを取得するには?
は、例えば、(すなわち、コンテキストパスは、サイト名である)、そしてIは$_SERVER['REQUEST_URI']
http://localhost:8080/sitename/portfolio/design
ため、それは/sitename/portfolio/design
が返される使用します。私はその後、私のきれいなURLを解釈するために、結果を爆発しています
:
$page=$_SERVER['REQUEST_URI'];
$segments=explode('/',trim($page,'/'));
$sitePage = $segments[1];//portfolio
これは私のローカルテスト環境のために正常に動作しているが、本番サーバー上で、$segments[1]
がために$segments[0]
になる必要があります開発と生産で同じコードを使用すると、この部分だけを取得する方法はありますか?/portfolio/design
、つまりコンテキストパスのないURI?テストサーバーと運用サーバー上で同じになります
http://sitename.localhost:8080/
その方法(ウェブルートからの相対)絶対パス:あなたのテストサイトが上になるよう