apache_conf [linux:.htaccess] apache的htaccess说明。 #linux #apache

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了apache_conf [linux:.htaccess] apache的htaccess说明。 #linux #apache相关的知识,希望对你有一定的参考价值。

## RewriteRuleのオプション
[R] 強制的にリダイレクト
[L] 書き換えが行われたら終了 (Last) 
現在の書き換え後の URL が後続のルール によってそれ以上書き換えられることを防止
[F] 強制的にアクセス禁止
HTTP レスポンス「403 : Forbidden」
[NC] パターンについて、文字の大小を区別しない(No Case)。 

## リファラによるアクセス制限
直リンク禁止など

```
# AccessControl referer
SetEnvIf Referer "^http://192\.168\.33\.10\/" chk_url
SetEnvIf Referer "^https://192\.168\.33\.10\/" chk_url

<Files ~ "\.(gif|jpg|jpeg|png)$">
  order deny,allow
  deny from all
  allow from env=chk_url 
</Files>
```

## 当該ディレクトリを制限
```
# 当ディレクトリ配下の拡張子のあるファイルへのアクセスを抑止
<Files ~ "^\.">
deny from all
</Files>
```

## 静的ファイルのアクセス制限
https://gatespace.jp/2012/06/29/image-403-htaccsess/

```
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?example.com [NC]
RewriteRule .(jpg|jpeg|png|gif)$ - [NC,F,L]
</IfModule>
```

## リダイレクト系

```````````````
<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  # 除外DIR
  RewriteCond %{REQUEST_URI} !(^/itochaan/)
  # 全アクセスを index.php へ (クエリをurl=へ)
  RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>
```````````````


-------


## ApacheでBasic認証用パスの暗号化
1. コマンドプロンプトで xampp > apache > bin まで cd
2. [ htpasswd -c #filename #username ] コマンド
3. #filename で入力したファイル名でファイルが生成されるので、中身をhtpasswdへコピペ

`````````````
AuthUserFile /home/users/2/lolipop.jp/~~~/.htpasswd
AuthGroupFile /dev/null
AuthName "表示する文章"
AuthType Basic
require valid-user

`````````````

## 文字コード強制
## 背景
UTF-8構成のサイトについて、携帯ページだけをShift_JISで駆動させたい。

```````
// .htaccess
AddDefaultCharset shift-jis
AddType "text/html; charset=shift-jis" .html .php

php_value default_charset               Shift_JIS
php_value mbstring.language             Japanese
php_value mbstring.http_input           auto
php_value mbstring.http_output          SJIS
php_value mbstring.internal_encoding    Shift_JIS
```````


## ガラケーアクセスのルーティング
対してURL末尾に [ /m/ ] を付与してリダイレクト

``````````````````````````````````````
<IfModule mod_rewrite.c>

    # FEATURE PHONE
    RewriteEngine on

    RewriteCond %{HTTP_USER_AGENT} ^(DoCoMo|KDDI|DDIPOKET|UP\.Browser|J-PHONE|Vodafone|SoftBank)
    RewriteRule ^$ /m/ [R,L]

</IfModule>

````````````````````````````````````

以上是关于apache_conf [linux:.htaccess] apache的htaccess说明。 #linux #apache的主要内容,如果未能解决你的问题,请参考以下文章

apache_conf Linux片段

apache_conf [lib config] #linux

apache_conf [linux:.htaccess] apache的htaccess说明。 #linux #apache

apache_conf Linux + Visual Studio Code + Docker

apache_conf Configuraçãoninicial做Linux Debian

text htacces