ホーム>source

.htaccessファイルは最初のルールを無視します

URLはhttp://example.com/public_html/folder/file.php

# Rewrite all to public_html
RewriteCond %{REQUEST_URI} !php/
RewriteRule (.*) /public_html/$1
# URL: http://example.com/public_html/folder/file
# Hide/Add .php from/to URL
RewriteCond %{DOCUMENT_ROOT}/$1 !-d
RewriteCond %{REQUEST_FILENAME} !\.(.*)
RewriteCond %{REQUEST_URI} !php/
RewriteRule (.*) $1.php
# URL: http://example.com/folder/file.php

あなたの答え
  • 解決した方法 # 1

    /Users/gus/sites/New/8888/goestav5/.htaccess の中にこのようにしておく :

    RewriteEngine On
    # ignore all php/ URIs
    RewriteRule ^php/ - [L,NC]
    # add .php extension
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{DOCUMENT_ROOT}/$1.php -f
    RewriteRule ^([^.]+?)/?$ $1.php [L]
    # rewrite every non-file, non-directory to public_html
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(?!public_html/)(.*)$ public_html/$1 [L,NC]
    
    

関連記事

  • 前へ java - JPAクエリ:サブクエリをグループ化条件に結合する
  • 次へ php - JS:最初の選択オプションの値が「開始時間の選択」の場合、2番目の選択オプションを無効にする