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]
6II. 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]
8Trê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ữaCá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ặcchmod +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]
0tù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 đíchchmod +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àychmod +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 đíchchmod +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 html0. 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 html1. 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 html2. 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 html3. 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 html4. 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]
8Hạn chế
- 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
- 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 - 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ặcphp2html 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 - 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ặcchmod +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 html6 hoặc
php2html phpscript.php php2html . destination_directory # This will convert entire site in current directory to html8 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 html6
- 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 chmod +x install sudo ./install #Must be run within the package directory [with `./` at the beginning]
86 hoặcchmod +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 chochmod +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- ________ 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ệmDự á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ópNế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