Showing posts with label Website. Show all posts
Showing posts with label Website. Show all posts

Tuesday, July 9, 2013

Xóa Cache trình duyệt bằng PHP

Đối với 1 lập trình viên website, đặc biệt là lập trình PHP thì cache là 1 điều rất quan trọng. Vì nó có thể ảnh hưởng rất nhiều đến tốc độc của ứng dụng web.
Thường thì 1 website được chia ra 2 thành phần mà người dùng bình thường hầu  như ít người biết đến.
Đó là Front EndBack End (có thể hiểu nôm na là phần TrướcSau). Vậy Trước là gì? và Sau là gì?

Trước:
Đó là phần hiện thị khi bạn gõ tên miên và bấm enter.
Sau:
Đó là phần điều khiển của người quản trị, nó chỉ dành cho nhóm Admin (quản trị) mà thôi. Muốn sử dụng thành phần này thì cần phải biết được dẫn bí mật và bắt buộc phải có tài khoản đăng nhập admin.

Nhưng tôi sẽ không nói đến vấn đề này, mà chỉ đề cập đến vấn đề Cache mà thôi. Nhưng tại sao tôi lại nói về TrướcSau?

Đơn giản là vì khi sử dụng Cache người lập trình luôn cố gắng để tối ưu cho phần Trước nên sử dụng Cache là rất cần thiết. Tất nhiên còn phụ thuộc vào hoàn cảnh để áp dụng cache.

Còn phần Sau thì sao?
Vì đây là khu vực chỉ dảnh cho những người đặc biệt nên bắt buộc nó phải được bảo mật nên việc lưu Cache có lẽ rất ít lập trình viên nào áp dụng cho khu vực này. Vậy làm sao để làm được điều này?

Thật đơn giản!

Với HTML thì chỉ việc thêm đoạn code sau vào giữa cặp thẻ Header.
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="no-cache">
<meta http-equiv="Expires" content="-1">
<meta http-equiv="Cache-Control" content="no-cache">
Nhưng bạn hoàn toàn có thể linh động sử dụng với PHP, và hãy chèn đoạn code này vào dòng đầu tiên của tập tin .php
header ("Expires: ".gmdate("D, d M Y H:i:s", time())." GMT");
header ("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header ("Cache-Control: no-cache, must-revalidate");
header ("Pragma: no-cache");
Mục đích việc làm này là nó sẽ không lưu cache các Form trong Admin mà bạn thường xuyên thay đổi.
Tôi đã gặp phải tình trạng bị luu cache này khi cố gắng thay đổi nội dụng 1 record, nhưng thật không may vì lưu cache nên sau khi submit form rồi xem lại thì thấy mọi thứ không hề thay đổi. Nhưng thực ra thì mọi thứ đã thay đổi theo ý mình, nhưng vì bị cache nên mới bị thế, và cứ phải refresh lại trình duyệt thì mới có thể thấy sự thay đổi.

Đây là kinh nghiệm tôi muốn chia sẻ với các bạn khi muốn tối ưu website bằng Cache, hy vọng nó giúp ích được nhiều cho các bạn.

Thursday, July 4, 2013

Vì sao bạn chọn PHP làm bạn đồng hành để thiết kế website?

Khác với mô hình lập trình Desktop thông thường, lập trình trên môi trường web chủ yếu dựa vào mô hình Client-Server và giao thức HTTP để làm việc. Hiện tại, có khá nhiều ngôn ngữ cho phép chúng ta lập trình web như Java, .NET, PHP, Perl, Python, Ruby on Rails…Mỗi ngôn ngữ đều có những ưu và khuyết điểm riêng. Nội dung của bài viết này sẽ đi vào một số điểm nổi bật của PHP và một số nhân tố khiến PHP ngày càng trở nên phổ biến như ngày nay.
Tôi chọn PHP vì:

Mã nguồn mở

  • Có lẽ nhiều bạn cũng biết PHP là một sản phẩm mã nguồn mở (Open-source) nên việc cài đặt và tùy biến PHP là miễn phí và tự do.
  • Vì có ưu thế nguồn mở nên PHP có thể được cài đặt trên hầu hết các Web Server thông dụng hiện nay như Apache, IIS…

Tính Cộng đồng của PHP

  • Là một ngôn ngữ mã nguồn mở cùng với sự phổ biến của PHP thì cộng đồng PHP được coi là khá lớn và có chất lượng.
  • Với cộng đồng phát triển lớn, việc cập nhật các bản vá lỗi phiên bản hiện tại cũng như thử nghiệm các phiên bản mới khiến PHP rất linh hoạt trong việc hoàn thiện mình.
  • Cộng đồng hỗ trợ, chia sẽ kinh nghiệm của PHP cũng rất dồi dào. Với rất nhiều diễn đàn, blog trong và ngoài nước nói về PHP đã khiến cho quá trình tiếp cận của người tìm hiểu PHP được rút ngắn nhanh chóng.

Thư viện phong phú

  • Ngoài sự hỗ trợ của cộng đồng, thư viện script PHP cũng rất phong phú và đa dạng. Từ những cái rất nhỏ như chỉ là 1 đoạn code, 1 hàm (PHP.net…) cho tới những cái lớn hơn như Framework (Zend, CakePHP, CogeIgniter, Symfony…) ,ứng dụng hoàn chỉnh (Joomla, WordPress, PhpBB…)
  • Với thư viện code phong phú, việc học tập và ứng dụng PHP trở nên rất dễ dàng và nhanh chóng. Đây cũng chính là đặc điểm khiến PHP trở nên khá nổi bật và cũng là nguyên nhân vì sao ngày càng có nhiều người sử dụng PHP để phát triển web.

Hỗ trợ kết nối nhiều hệ cơ sở dữ liệu

  • Nhu cầu xây dựng web có sử dụng cơ sở dữ liệu là một nhu cầu tất yếu và PHP cũng đáp ứng rất tốt nhu cầu này. Với việc tích hợp sẵn nhiều Database Client trong PHP đã làm cho ứng dụng PHP dễ dàng kết nối tới các hệ cơ sở dữ liệu thông dụng.
  • Việc cập nhật và nâng cấp các Database Client đơn giản chỉ là việc thay thế các Extension của PHP để phù hợp với hệ cơ sở dữ liệu mà PHP sẽ làm việc.
  • Một số hệ cơ sở dữ liệu thông dụng mà PHP có thể làm việc là: MySQL, MS SQL, Oracle, Cassandra…

Lập trình hướng đối tượng

  • Ngày nay, khái niệm lập trình hướng đối tượng (OOP) đã không còn xa lạ với lập trình viên. Với khả năng và lợi ích của mô hình lập trình này nên nhiều ngôn ngữ đã triển khai để hỗ trợ OOP.
  • Từ phiên bản PHP 5, PHP đã có khả năng hỗ trợ hầu hết các đặc điểm nổi bật của lập trình hướng đối tượng như là Inheritance, Abstraction, Encapsulation, Polymorphism, Interface, Autoload…
  • Với việc ngày càng có nhiều Framework và ứng dụng PHP viết bằng mô hình OOP nên lập trình viên tiếp cận và mở rộng các ứng dụng này trở nên dễ dàng và nhanh chóng.

Tính Bảo mật

  • Bản thân PHP là mã nguồn mỡ và cộng đồng phát triển rất tích cực nên có thể nói PHP khá là an toàn.
  • PHP cũng cung cấp nhiều cơ chế cho phép bạn triển khai tính bảo mật cho ứng dụng của mình như session, các hàm filter dữ liệu, kỹ thuật ép kiểu, thư viện PDO (PHP Data Object) để tương tác với cơ sở dữ liệu an toàn hơn.
  • Kết hợp với các kỹ thuật bảo mật ở các tầng khác thì ứng dụng PHP sẽ trở nên chắc chắn hơn và đảm bảo hoạt động cho website.

Khả năng mở rộng cho PHP

  • Bằng việc xây dựng trên nền ngôn ngữ C và là mã nguồn mở nên khả năng mở rộng cho ứng dụng PHP có thể nói là không có giới hạn.
  • Với thư viện phong phú và khả năng mở rộng lớn, ứng dụng PHP có thể tương tác với hầu hết các loại ứng dụng phổ biến như xử lý hình ảnh, nén dữ liệu, mã hóa, thao tác file PDF, Office, Email, Streaming…
  • Bạn hoàn toàn có thể tự xây dựng cho mình các Extension để tối ưu, bổ sung các chức năng cho PHP cũng như tối ưu luôn Core của PHP để phục vụ cho các mục đích mở rộng website của mình.

Liệu biết PHP là đủ?
Như nhiều bạn lập trình viên có khả năng học khá nhiều ngôn ngữ lập trình nói chung và ngôn ngữ lập trình web nói riêng thì việc chỉ biết mỗi PHP thì có lẽ chưa “thỏa mãn”. Biết một ngôn ngữ chưa hẳn là ít, nếu bạn chú tâm và đào sâu thì mỗi ngôn ngữ luôn có những tầng khác nhau để khám phá. Không sợ học hết, chỉ sợ học không nổi mà thôi!

Nói đi cũng phải nói lại, nếu chỉ biết mỗi PHP thì thật sự bạn khó có khả năng triển khai 1 website. Bởi vì trong một hệ thống website, Coding PHP chỉ là một mảng nhỏ trong khâu sản xuất web mà thôi. Bạn cần phải trang bị một số kiến thức khác trong công nghệ web như : HTML, CSS, Javascript, SEO, UML, Database, Networking…để đảm bảo bạn nắm được những gì sẽ xảy ra trong quá trình làm web vì nó sẽ rất có ích cho bạn khi triển khai PHP.

Như vậy có nghĩa là học lập trình web thì bạn phải vừa học theo chiều sâu và học theo chiều rộng. Ngôn ngữ lập trình web phía Server (PHP) thì học càng sâu càng tốt và các công nghệ của web thì tìm hiểu càng rộng càng tốt. Có như vậy bạn mới có một cái nhìn toàn diện hơn về ứng dụng web và dễ dàng hoàn thiện website.

Môi trường làm việc, thị trường & tương lai của PHP

Để học tập và nghiên cứu PHP thì triển khai môi trường để tiến hành rất dễ. Bạn có thể cài các bộ ứng dụng đầy đủ để tạo mô hình Client-Server ngay trên máy của mình để học (AppServ, WAMP, XAMPP…) .
Nếu bạn không muốn code từ đầu thì có thể nghiên cứu các Framework PHP để phát triển ứng dụng trên đó như là Zend, CakePHP, CodeIgniter…

Như hầu hết các ngôn ngữ lập trình hiện đại khác, bạn cũng có thể sử dụng các IDE để phát triển ứng dụng PHP như Zend Studio, Nusphere PhpED, NetBeans…Với các tính năng nổi bật như là Code & Syntax Highlighting, Auto-Complete, Project Manager, Code Navigator, Debug…thì việc code PHP sẽ trở nên dễ dàng và nhanh chóng hơn.

Với việc ngày càng có nhiều ứng dụng lớn viết bằng PHP, sự đa dạng trong ứng dụng và Framework làm cho thị trường và tương lai dành cho các bạn yêu thích PHP là rất lớn. Ngoài ra, bạn có thể thử sức với chứng chỉ ZCE của Zend trong lĩnh vực PHP. Rất nhiều công ty đang chọn PHP làm ngôn ngữ phát triển website cho khách hàng cũng như sản phẩm của riêng họ nên việc hiểu biết và chuyên sâu về công nghệ web nói chung và chuyên sâu về PHP nói riêng sẽ là một lợi thế rất lớn cho các bạn.

(Bài viết được sưu tầm trên internet)

Wednesday, May 8, 2013

14 cái 'đầu tiên' của mạng Internet

Bạn có bao giờ thắc mắc, đâu là bức ảnh đầu tiên từng được tải lên mạng Internet, ai là người gửi đi email đầu tiên, quảng cáo banner đầu tiên trên trang web có hình thù ra sao...

Dưới đây là những khoảnh khắc "đầu tiên" góp phần làm nên lịch sử của mạng Internet.

1. Bức email đầu tiên do Ray Tomlinson tự gửi cho chính mình vào năm 1971. Nhớ lại nội dung của email này, Tomlinson cho biết, chúng chẳng có gì đáng nhớ và chỉ là một chuỗi ký tự vô nghĩa, kiểu như QWERTYIOP hoặc gì đó đại loại như vậy".
Tomlinson là người đầu tiên gửi email qua mạng Internet.

2. Mạng ARPANET phải chịu trách nhiệm phát tán thư rác đầu tiên, khi 393 người dùng đã nhận được email này vào ngày 3/5/1978.

3. Tên miền đầu tiên được đăng ký là Symbolics.com vào ngày 15/3/1985. Giờ thì website này chỉ còn vai trò lịch sử mà thôi.
Tên miền đầu tiên được đăng ký trên mạng Internet.

4. Website đầu tiên trên thế giới được dành để đăng tải thông tin về mạng World Wide Web và chính thức hòa mạng từ ngày 6/8/1991.
Đây là địa chỉ URL của trang này: http://info.cern.ch/hypertext/WWW/TheProject.html.
Trang web đầu tiên của thế giới.

5. Bức ảnh đầu tiên từng được tải lên mạng web do Tim Burners Lee, người được mệnh danh là cha đẻ, nhà phát minh ra World Wide Web, đăng tải, đại diện cho một nhóm tấu hài toàn nữ có tên Les Horrible Cernettes.
Bức ảnh đầu tiên được tải lên mạng Internet.

6. Tin nhắn chat IM AOL đầu tiên do Ted Leonis gửi cho vợ vào ngày 6/1/1993. Nội dung của nó như sau: "Đừng sợ. Anh đây. Yêu và nhớ em". Vợ của Leonis đã đáp lại "Wow, kiểu liên lạc này tuyệt đấy". Sau này, Leonis trở thành Phó Chủ tịch của AOL.
Ted Leonis, Phó Chủ tịch của AOL.

7. Banner quảng cáo trực tuyến đầu tiên trên thế giới xuất hiện trên HotWired.com vào tháng 10/1994 để quảng bá cho 7 viện bảo tàng nghệ thuật và do mạng AT&T tài trợ.

8. Món đồ đầu tiên bán được qua eBay (khi ấy có tên là Auction Web) là một thiết bị chỉ laser bị gãy với giá 14,83 USD vào năm 1995. Người mua nó tiết lộ với nhà sáng lập eBay Piere Omidyar là anh ta chuyên sưu tầm thiết bị chỉ laser gãy.
Món đồ đầu tiên bán được trên eBay.

9. Cuốn sách đầu tiên được mua qua Amazon là "Computer Models of Fundamental Mechanisms of Thoughts" của tác giả Douglas Hofstadter vào năm 1995.
Cuốn sách đầu tiên được mua qua Amazon.

10. Câu nói đầu tiên được truyền qua mạng Skype là vào tháng 4/2003 bởi một thành viên trong nhóm phát triển. "Tere, kas sa kuuled mind?" trong tiếng Estonia có nghĩa là "Hello, can you hear me?", hay "Xin chào, anh nghe thấy tôi nói chứ?".

11. Mark Zuckerberg là thành viên đầu tiên của Facebook, nhưng người dùng Facebook đầu tiên không thuộc ekip sáng lập ra mạng xã hội này là Arie Hasit, một người Israel đang nuôi giấc mơ trở thành giáo sĩ Do Thái.
Arie Hasit, người dùng đầu tiên không thuộc ekip sáng lập của mạng xã hội Facebook.

12. Video clip đầu tiên được post lên YouTube là của nhà đồng sáng lập Jawed Karim quay tại Sở thú San Diego. Nó được upload vào ngày 23/4/2005 và đã được xem gần 10 triệu lượt từ đó đến nay.
Video clip đầu tiên được tải lên YouTube.

13. Câu tweet đầu tiên trên mạng tiểu blog Twitter là của nhà đồng sáng lập Jack Dorsey vào ngày 21/3/2006.
Câu tweet đầu tiên trên mạng tiểu blog Twitter.

14. Cuộc gọi di động thương mại đầu tiên được thực hiện vào năm 1983, do Bob Barnett, khi ấy là Chủ tịch của Ameritech bấm số.