Laravel 9 xóa chỉ mục công khai php

Nếu bạn đang chạy một dự án Laravel, bạn có thể ngạc nhiên khi biết rằng các tuyến ứng dụng của bạn có thể có sẵn trên một số URL khác nhau

Thời gian đọc. < 1 phút

Một trong những url trên trang web này là

protected function removeIndexFromUrl[]
    {
        if [Str::contains[request[]->getRequestUri[], '/index.php/']] {
            $url = str_replace['index.php/', '', request[]->getRequestUri[]];

            if [strlen[$url] > 0] {
                header["Location: $url", true, 301];
                exit;
            }
        }
    }
0

Tuy nhiên, có vẻ như url sau cũng sẽ hoạt động

protected function removeIndexFromUrl[]
    {
        if [Str::contains[request[]->getRequestUri[], '/index.php/']] {
            $url = str_replace['index.php/', '', request[]->getRequestUri[]];

            if [strlen[$url] > 0] {
                header["Location: $url", true, 301];
                exit;
            }
        }
    }
1

Các vấn đề tương tự sẽ xảy ra với url trang web chính

url mặc định là

protected function removeIndexFromUrl[]
    {
        if [Str::contains[request[]->getRequestUri[], '/index.php/']] {
            $url = str_replace['index.php/', '', request[]->getRequestUri[]];

            if [strlen[$url] > 0] {
                header["Location: $url", true, 301];
                exit;
            }
        }
    }
2

Nhưng các url sau cũng sẽ hoạt động

protected function removeIndexFromUrl[]
    {
        if [Str::contains[request[]->getRequestUri[], '/index.php/']] {
            $url = str_replace['index.php/', '', request[]->getRequestUri[]];

            if [strlen[$url] > 0] {
                header["Location: $url", true, 301];
                exit;
            }
        }
    }
3

protected function removeIndexFromUrl[]
    {
        if [Str::contains[request[]->getRequestUri[], '/index.php/']] {
            $url = str_replace['index.php/', '', request[]->getRequestUri[]];

            if [strlen[$url] > 0] {
                header["Location: $url", true, 301];
                exit;
            }
        }
    }
4

Tình huống này có thể khiến đối thủ cạnh tranh có thể tạo url cho những url không mong muốn đó với

protected function removeIndexFromUrl[]
    {
        if [Str::contains[request[]->getRequestUri[], '/index.php/']] {
            $url = str_replace['index.php/', '', request[]->getRequestUri[]];

            if [strlen[$url] > 0] {
                header["Location: $url", true, 301];
                exit;
            }
        }
    }
5và các công cụ tìm kiếm sẽ thấy các url trùng lặp cho toàn bộ trang web của chúng tôi và cuối cùng chúng tôi không biết url nào sẽ được hiển thị trong công cụ tìm kiếm [những url không có chỉ mục. php hoặc những thứ có nó]

Trong hướng dẫn ngắn này, chúng ta sẽ xem xét các tùy chọn và cách xóa

protected function removeIndexFromUrl[]
    {
        if [Str::contains[request[]->getRequestUri[], '/index.php/']] {
            $url = str_replace['index.php/', '', request[]->getRequestUri[]];

            if [strlen[$url] > 0] {
                header["Location: $url", true, 301];
                exit;
            }
        }
    }
5 khỏi URL trong Laravel

1.
protected function removeIndexFromUrl[]
    {
        if [Str::contains[request[]->getRequestUri[], '/index.php/']] {
            $url = str_replace['index.php/', '', request[]->getRequestUri[]];

            if [strlen[$url] > 0] {
                header["Location: $url", true, 301];
                exit;
            }
        }
    }
1

Giải pháp nhanh nhất là đặt đoạn mã sau vào tệp

protected function removeIndexFromUrl[]
    {
        if [Str::contains[request[]->getRequestUri[], '/index.php/']] {
            $url = str_replace['index.php/', '', request[]->getRequestUri[]];

            if [strlen[$url] > 0] {
                header["Location: $url", true, 301];
                exit;
            }
        }
    }
1 của bạn

/*
 * --------------------------------------------------------------------
 * REMOVE index.php from URI
 * --------------------------------------------------------------------
 */
if [strpos[$_SERVER['REQUEST_URI'],'index.php'] !== FALSE ]
{
    $new_uri = preg_replace['#index\.php\/?#', '', $_SERVER['REQUEST_URI']];
    header['Location: '.$new_uri, TRUE, 301];
    die[];
}

2.
protected function removeIndexFromUrl[]
    {
        if [Str::contains[request[]->getRequestUri[], '/index.php/']] {
            $url = str_replace['index.php/', '', request[]->getRequestUri[]];

            if [strlen[$url] > 0] {
                header["Location: $url", true, 301];
                exit;
            }
        }
    }
3

Một phương pháp khác là kiểm tra tuyến đường trong

protected function removeIndexFromUrl[]
    {
        if [Str::contains[request[]->getRequestUri[], '/index.php/']] {
            $url = str_replace['index.php/', '', request[]->getRequestUri[]];

            if [strlen[$url] > 0] {
                header["Location: $url", true, 301];
                exit;
            }
        }
    }
3 và thực hiện chuyển hướng

protected function removeIndexFromUrl[]
    {
        if [Str::contains[request[]->getRequestUri[], '/index.php/']] {
            $url = str_replace['index.php/', '', request[]->getRequestUri[]];

            if [strlen[$url] > 0] {
                header["Location: $url", true, 301];
                exit;
            }
        }
    }

và đăng ký phương thức bên trong phương thức

protected function removeIndexFromUrl[]
    {
        if [Str::contains[request[]->getRequestUri[], '/index.php/']] {
            $url = str_replace['index.php/', '', request[]->getRequestUri[]];

            if [strlen[$url] > 0] {
                header["Location: $url", true, 301];
                exit;
            }
        }
    }
5

3. Chuyển hướng với Nginx

Nếu trang web của bạn đang chạy trên Nginx, bạn cũng có thể chuyển hướng bằng các cấu hình đơn giản trong cấu hình nginx của mình

if [$request_uri ~* "^/index\.php[/?][.*]"] {
    return 301 $2;
}

4. Chuyển hướng với Apache

Nếu trang web của bạn đang chạy trên máy chủ Apache, chỉ cần thêm đoạn mã sau vào tệp

protected function removeIndexFromUrl[]
    {
        if [Str::contains[request[]->getRequestUri[], '/index.php/']] {
            $url = str_replace['index.php/', '', request[]->getRequestUri[]];

            if [strlen[$url] > 0] {
                header["Location: $url", true, 301];
                exit;
            }
        }
    }
6


    RewriteEngine On

    # Redirect if index.php is in the URL
    RewriteRule ^index.php/[.+] /$1 [R=301,L]

Hãy cho chúng tôi biết trong phần bình luận bên dưới, nếu bạn có bất kỳ câu hỏi nào

#laravel

Usama Muneer

Một Nhà phát triển Web Full-Stack chuyên nghiệp nhiệt tình, năng động và định hướng chi tiết đến từ Karachi, Pakistan với kinh nghiệm phát triển các ứng dụng bằng cách sử dụng JavaScript, WordPress & Laravel cụ thể. Thích viết về các công nghệ web khác nhau với một kỹ năng hữu ích không kém để hiểu ý nghĩa của nó

Làm cách nào để xóa chỉ mục php khỏi URL trong Laravel 9?

Đổi tên máy chủ. php trong thư mục gốc Laravel của bạn để lập chỉ mục. php và sao chép. htaccess từ thư mục/public vào thư mục gốc Laravel của bạn. .
Đã thử các bước của bạn. .
Cung cấp thông tin nhật ký để chúng tôi có thể theo dõi nguyên nhân gốc rễ. .
Đây là tập tin nhật ký đầy đủ. dropbox. com/s/8fhlbej86nqr5qj/laravel. nhật ký?.
đã làm cho tôi

Làm cách nào để xóa công khai trong Laravel 9?

Để xóa thư mục chung khỏi laravel 9, bạn cần tùy chỉnh. tệp htaccess . Bạn phải kích hoạt mod_rewrite trên máy chủ Apache của mình. Cần có mô-đun viết lại để áp dụng các cài đặt này.

Làm cách nào tôi có thể xóa Chỉ mục php công khai trong URL được tạo bởi Laravel?

Tạo hoặc chỉnh sửa. htaccess trong thư mục gốc của Laravel và định cấu hình RewriteRule để xóa “public/index. php” từ URL . Bạn phải kích hoạt mod_rewrite trên máy chủ Apache của mình.

Làm cách nào để xóa chỉ mục php trong Laravel 7?

Trong hướng dẫn ngắn này, chúng ta sẽ xem xét các tùy chọn và cách xóa chỉ mục. php từ URL trong Laravel. .
công khai/chỉ mục. php. .
TuyếnDịch vụProvider. php. .
Chuyển hướng với Nginx. .
Chuyển hướng với Apache

Chủ Đề