Chuyển trang web php sang html

Nếu bạn có một trang web PHP mà bạn không cập nhật nữa, bạn có thể quan tâm đến việc biến nó thành HTML tĩnh. Có hai cách để làm điều đó

I. quên

Nhận Wget hoặc, có thể, nó đã có trên máy tính của bạn và chạy nó trong thiết bị đầu cuối hoặc dấu nhắc

chmod +x install
sudo ./install   #Must be run within the package directory (with `./` at the beginning)
6

II. Httrack

Httrack là một chương trình Windows để tải xuống các trang web trên máy tính cục bộ của bạn với giao diện người dùng đồ họa. Thật dễ dàng để sử dụng và cấu hình

Trước khi bạn tải lên phiên bản tĩnh của mình

Wget và Httrack không hoàn hảo để chuyển đổi trang web của bạn sang HTML tĩnh để sử dụng trực tuyến. Trước khi bạn tải phiên bản tĩnh của mình trở lại máy chủ, bạn cần chuyển đổi các liên kết để chúng không trỏ đến /index. html. Chủ yếu là do SEO và trải nghiệm người dùng. Tôi đã giải quyết vấn đề này với bộ công cụ này

Đây là một tập lệnh/công cụ đơn giản được viết bằng python (3. 4) để chuyển đổi các tập lệnh PHP thành các trang HTML tĩnh. Mục tiêu là chuyển đổi toàn bộ trang web PHP nằm trong localhost thành trang web HTML tĩnh hoàn toàn. Việc chuyển đổi này có thể được thực hiện trên một thư mục chứa trang web cũng như trên một tập lệnh PHP

cơ chế

Hệ thống chạy công cụ này phải cài đặt PHP. Nó thực thi mọi tập lệnh PHP với môi trường PHP (CLI) hệ thống và phân tích cú pháp đầu ra để thay thế các đánh dấu theo yêu cầu và tạo ra . html cho mỗi . php .

Cài đặt

Tập lệnh có thể chạy mà không cần cài đặt nếu python3. 4 có sẵn

./php2html

Trên Unix/Linux

Công cụ này có thể được cài đặt bằng cách chạy tệp cài đặt được cung cấp, trong bất kỳ Hệ thống Linux nào

chmod +x install
sudo ./install   #Must be run within the package directory (with `./` at the beginning)

Hoặc chỉ cần sao chép tập lệnh

chmod +x install
sudo ./install   #Must be run within the package directory (with `./` at the beginning)
7 sang
chmod +x install
sudo ./install   #Must be run within the package directory (with `./` at the beginning)
8

Trên Windows

Đối với cửa sổ, Bạn có thể đổi tên tệp bằng phần mở rộng

chmod +x install
sudo ./install   #Must be run within the package directory (with `./` at the beginning)
9 và chạy nó trong môi trường python. Hoặc bạn có thể sử dụng cxfreeze để tạo bản dựng nhị phân để thực thi độc lập. Tôi có thể không cung cấp bất kỳ bản dựng nhị phân nào của công cụ này nữa

Cách sử dụng

Cả phiên bản Windows và Linux của công cụ này đều có thể được sử dụng theo cùng một cách (Trong windows, đảm bảo thêm đường dẫn thực thi vào biến môi trường PATH). Nó có thể được chạy với cmd trong windows và với trình giả lập thiết bị đầu cuối trong Linux

Cách sử dụng đơn giản

php2html phpscript.php
php2html . destination_directory  # This will convert entire site in current directory to html

Luôn chạy lệnh này từ trong Thư mục gốc tài liệu của trang web của bạn (

chmod +x install
sudo ./install   #Must be run within the package directory (with `./` at the beginning)
0 hoặc
chmod +x install
sudo ./install   #Must be run within the package directory (with `./` at the beginning)
1 hoặc bất kỳ thứ gì), nếu không có thể xảy ra kết quả không mong muốn

Sử dụng nâng cao

Cách sử dụng.

chmod +x install
sudo ./install   #Must be run within the package directory (with `./` at the beginning)
0

tùy chọn. src dest -q -h --help -o -i -v --version -a. htaccess -rd

chmod +x install
sudo ./install   #Must be run within the package directory (with `./` at the beginning)
1. đường dẫn nguồn. src không thể là một thư mục khác với thư mục hiện tại, để chuyển thư mục hiện tại dưới dạng src, hãy sử dụng. hoặc. /

chmod +x install
sudo ./install   #Must be run within the package directory (with `./` at the beginning)
2. thư mục đích

chmod +x install
sudo ./install   #Must be run within the package directory (with `./` at the beginning)
3. có nghĩa là khá (sẽ không in bất kỳ đầu ra nào ngoài lỗi)
chmod +x install
sudo ./install   #Must be run within the package directory (with `./` at the beginning)
3. có thể được đặt ở bất cứ đâu trong chuỗi đối số

chmod +x install
sudo ./install   #Must be run within the package directory (with `./` at the beginning)
5. hiển thị menu trợ giúp này
chmod +x install
sudo ./install   #Must be run within the package directory (with `./` at the beginning)
6. hiển thị menu trợ giúp này

chmod +x install
sudo ./install   #Must be run within the package directory (with `./` at the beginning)
7. ghi đè thư mục đích Chế độ này không phụ thuộc vào sự tồn tại của thư mục đích

chmod +x install
sudo ./install   #Must be run within the package directory (with `./` at the beginning)
8. là một tùy chọn nguy hiểm và nên tránh. Điều này thay thế tất cả các tệp PHP thành tệp HTML kết quả trong thư mục nguồn. Điều này không yêu cầu tùy chọn dest, nó cũng không nhắc cho nó và nếu dest được đưa ra làm đối số dòng lệnh, nó sẽ đơn giản bỏ qua điều đó

chmod +x install
sudo ./install   #Must be run within the package directory (with `./` at the beginning)
9. hiển thị thông tin phiên bản
php2html phpscript.php
php2html . destination_directory  # This will convert entire site in current directory to html
0. hiển thị thông tin phiên bản

php2html phpscript.php
php2html . destination_directory  # This will convert entire site in current directory to html
1. xử lý các. tập tin htaccess. Tệp truy cập khác có thể được xử lý bằng cách thay đổi. htaccess thành tên thực của AccessFile đã sử dụng. Không được có bất kỳ khoảng trắng nào giữa -a và. htaccess Nếu bạn chỉ vượt qua -a, nó sẽ không tìm kiếm bất kỳ AccessFile nào và cũng không cố xử lý chúng. Nếu bạn không vượt qua -a như một tùy chọn, nó sẽ tìm kiếm. htaccess theo mặc định

php2html phpscript.php
php2html . destination_directory  # This will convert entire site in current directory to html
2. cấu trúc thư mục dự trữ. Theo mặc định, thư mục trống sẽ không được sao chép vào thư mục đích. Nếu -rd được chỉ định, thư mục trống cũng sẽ được sao chép đến đích để bảo toàn cấu trúc thư mục

php2html phpscript.php
php2html . destination_directory  # This will convert entire site in current directory to html
3. Loại trừ thư mục. Thư mục được chuyển với các tùy chọn này sẽ không được đưa vào trang web html mới

php2html phpscript.php
php2html . destination_directory  # This will convert entire site in current directory to html
4. Loại trừ tệp. Tệp được chỉ định bởi tùy chọn này sẽ không được đưa vào trang web html mới

chmod +x install
sudo ./install   #Must be run within the package directory (with `./` at the beginning)
8

Hạn chế

  1. Công cụ này chỉ thay đổi URL PHP tương đối thành URL HTML, không có URL tuyệt đối nào được thay đổi theo bất kỳ cách nào
  2. Bạn nên sử dụng JavaScript (
    php2html phpscript.php
    php2html . destination_directory  # This will convert entire site in current directory to html
    5 hoặc tương tự) để lấy vị trí hiện tại chứ không phải PHP (
    php2html phpscript.php
    php2html . destination_directory  # This will convert entire site in current directory to html
    6), nếu bạn định sử dụng URL đó trong bất kỳ liên kết nào mà bạn cần chuyển đổi thành liên kết html, nếu không, nó có thể tạo ra kết quả không mong muốn
  3. Nếu bạn muốn sử dụng các biến PHP.
    php2html phpscript.php
    php2html . destination_directory  # This will convert entire site in current directory to html
    6 hoặc
    php2html phpscript.php
    php2html . destination_directory  # This will convert entire site in current directory to html
    8 xem phần mẹo và thủ thuật
  4. Sử dụng đường dẫn URL tương đối nhiều nhất có thể. Nếu bất kỳ URL tương đối nào được chỉ định với đường dẫn tuyệt đối (với
    php2html phpscript.php
    php2html . destination_directory  # This will convert entire site in current directory to html
    9 hoặc
    chmod +x install
    sudo ./install   #Must be run within the package directory (with `./` at the beginning)
    1. ), nó sẽ bị bỏ qua và sẽ không được chuyển thành đường dẫn URL HTML

Mẹo & Thủ thuật

Nếu bạn muốn sử dụng

php2html phpscript.php
php2html . destination_directory  # This will convert entire site in current directory to html
6 hoặc
php2html phpscript.php
php2html . destination_directory  # This will convert entire site in current directory to html
8 trong một trang, hãy thêm các dòng sau vào đầu trang

php2html phpscript.php
php2html . destination_directory  # This will convert entire site in current directory to html
6

  1. Bây giờ bạn có thể sử dụng ________ 183 hoặc ________ 184 (bên trong một hàm, lớp hoặc không gian tên) thay cho
    php2html phpscript.php
    php2html . destination_directory  # This will convert entire site in current directory to html
    8
  2. chmod +x install
    sudo ./install   #Must be run within the package directory (with `./` at the beginning)
    86 hoặc
    chmod +x install
    sudo ./install   #Must be run within the package directory (with `./` at the beginning)
    87 (bên trong một hàm, lớp hoặc không gian tên) thay cho
    chmod +x install
    sudo ./install   #Must be run within the package directory (with `./` at the beginning)
    88 hoặc thư mục hiện tại
  3. ________ 189 hoặc ________ 260 (bên trong một hàm, lớp hoặc không gian tên) thay cho
    php2html phpscript.php
    php2html . destination_directory  # This will convert entire site in current directory to html
    6

Tất cả các biến mới này là các đường dẫn tương đối không phải là đường dẫn tuyệt đối

từ chối trách nhiệm

Dự án này xuất hiện từ nhu cầu cá nhân. Tôi thích viết các trang web bằng PHP và lưu trữ hầu hết các trang liên quan đến dự án của tôi trên github trong khi không đặc biệt quan tâm đến việc sử dụng Jekyll. Đó là lý do tôi viết kịch bản này ngay từ đầu, để thực hiện việc chuyển đổi từ PHP sang HTML. Vì vậy, điều này có thể không đáp ứng được nhu cầu của hầu hết các nhà phát triển web PHP hiện có

Nó đi kèm với một bản sao Giấy phép GPL v3 và không có bất kỳ hình thức bảo hành nào, vì vậy hãy cẩn thận khi sử dụng.

Đóng góp

Nếu bạn là nhà phát triển, bạn có thể cân nhắc đóng góp cho dự án này bằng cách fork kho lưu trữ này và thực hiện các thay đổi để tốt hơn và thực hiện yêu cầu kéo, hoặc chia sẻ ý tưởng và đề xuất hoặc tìm lỗi, bất cứ điều gì, những gì bạn nghĩ sẽ có ích cho dự án này

Nếu bạn không phải là nhà phát triển, nhưng vẫn muốn đóng góp, thì bạn có thể hỗ trợ tinh thần cho các nhà phát triển đóng góp bằng cách gắn dấu sao cho kho lưu trữ và chia sẻ ý tưởng. Nếu bạn muốn được thông báo về sự phát triển liên tục, bạn có thể thêm phần này vào danh sách theo dõi của mình trong Github