>PHP 프레임워크 >YII >yii URL index.php 숨기기

yii URL index.php 숨기기

藏色散人
藏色散人원래의
2020-09-07 10:14:252207검색

Yii url hide index.php 방법: 먼저 웹 루트 디렉토리에 ".htaccess" 파일을 추가한 다음 "config/web.php" 구성을 수정하고 마지막으로 "AllowOverride None"을 "AllowOverride All"로 변경합니다.

yii URL index.php 숨기기

권장: "PHP Video Tutorial" "yii Tutorial"

Yii 프레임워크를 사용하면 URL 미화, index.php 숨김 [버전 2.0]

url 미화

목적: http: / /localtest/yii/web/index.php?r=hello/index

Beautified into: http://localtest/yii/web/hello/index

여기서 wampserver를 사용하여 새로운 localtest 사이트를 만들었습니다. 여기를 클릭(여기를 클릭)하고 yii의 기본 폴더 이름을 yii로 변경합니다.

위의 두 주소를 비교해 보면 실제로 index.php?r=이 숨겨져 있습니다.

여기에는 두 가지 단계가 있습니다.

1. .htaccess 파일을 추가합니다.

웹 루트 디렉터리에 .htaccess 파일을 추가합니다. 내용은 다음과 같습니다.

RewriteEngine On
DirectoryIndex index.html index.php
# 如果是一个目录或者文件,就访问目录或文件
RewriteCond %{REQUEST_FILENAME} !-d
#如果文件存在,就直接访问文件,不进行下面的RewriteRule
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . index.php

.htaccess 파일을 직접 만들 수는 없습니다. 먼저 다른 이름으로 저장한 다음... , .htaccess라는 파일로 저장하고 모든 파일을 저장 유형으로 선택합니다.

2. config/web.php 구성. config/web.php의 구성 요소 배열에 다음 항목을 추가합니다.

'urlManager' => [
    // //开启url美化
    'enablePrettyUrl' => true,
    // //隐藏index.php
    'showScriptName' => false,
    // //禁用严格匹配模式
    'enableStrictParsing' => false,
    // //url后缀名称
    // 'suffix'=>'.html',
    'rules' => [
    ],
],

이 때 URL에서 404 오류가 발생하면 index.php?r=을 삭제할 수 있습니다. , phpstudy에 통합된 Apache를 사용하고 있으므로 서버 구성을 확인할 수 있습니다.

confhttpd.conf 구성을 확인하고 Apache의 mod_rewrite 모듈을 활성화해야 합니다.

LoadModule rewrite_module 모듈 앞에 있는 "#" 기호를 제거하세요. /mod_rewrite.so;

그런 다음 Apache의 AllowOverride를 수정합니다

AllowOverride None을 AllowOverride All로 변경합니다.

confextrahttpd-vhosts.conf에서 사이트를 구성했으므로 이를 httpd-vhosts.conf와 동기화하고 AllowOverride 해당 사이트 없음 AllowOverride All;

이 시점에서 http://localtest/yii/web/hello/index

을 사용하여 http://localtest/yii/web/index.php? r=안녕하세요/index

위 내용은 yii URL index.php 숨기기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.