ホームページ  >  記事  >  バックエンド開発  >  Python&PHP在部署web文件时的不同?

Python&PHP在部署web文件时的不同?

WBOY
WBOYオリジナル
2016-06-06 20:49:041120ブラウズ

我在读DjangoBook时读到下面这段话

有过 PHP 编程背景的话,你可能习惯于将代码都放在 Web 服务器的文档根目录 (例如 /var/www 这样的地方)。 而在 Django 中,把任何Python代码和web server的文档根(root)放在一起并不是一个好主意。因为这样做有使人能通过网路看到你原代码的风险. 那就太糟了。

为什么呢?难道关键不是在于控制文件夹的权限吗?

回复内容:

我在读DjangoBook时读到下面这段话

有过 PHP 编程背景的话,你可能习惯于将代码都放在 Web 服务器的文档根目录 (例如 /var/www 这样的地方)。 而在 Django 中,把任何Python代码和web server的文档根(root)放在一起并不是一个好主意。因为这样做有使人能通过网路看到你原代码的风险. 那就太糟了。

为什么呢?难道关键不是在于控制文件夹的权限吗?

PHP 文件通常和静态 HTML 一样,客户端访问到特定的文件然后 Web 服务器来解析它。而 Django 等 Python Web 框架(以及 Ruby 的 Rails 等)已经没有了这样的对应关系,转而使用 URL 路由/映射来决定一个 URL 对应于哪段代码(依框架的不同,通常是某个函数或者某个类,很少像 PHP 那样是一个文件)。URL 是由特定的上层模块和其它请求信息一起传过来的(比如 WSGI、uWSGI、FastCGI 或者直接转发等)。你接着读就知道了。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。