php - 将网站从 Windows 本地主机移动到 Linux 实时服务器 : issues with filenames and paths

标签 php linux url web server

我正在将我的网站转移到实时服务器上,我在这个过程中发现 linux 服务器区分大小写,因此使用大写字母的 URL 不是一个好主意。

这对文件名也很重要吗?

我所有的类(class)都以大写字母开头,这样可以更轻松地浏览文件。

我应该将所有文件更改为小写吗?

最佳答案

无需更改文件名,只需保持一致即可,即使用 PHP 代码中的文件名。如果你的类名是 Post 坚持在 php 代码中使用 Post 而不是 post,实际上类名开头的大写字母是应该遵循的通用标准(只是为了可读性,没有严格的规则)。

如果您在项目中的任何位置硬编码路径,如 C:\xampp\htdocs\mysite,文件路径将是一个问题。 避免这种情况。请改用相对路径、__FILE__ 和/或 __DIR__http://php.net/manual/en/language.constants.predefined.php

URL 也一样,避免在代码中使用http://localhost。您可以在项目的开头设置基本 url,您可以在其中编写如下内容:

if(defined('DEV')){
  $url = "http://localhost/mysite";
} 
elseif(defined('PROD')){
  $url = "http://example.com"
}

如果您使用任何 php 框架,您可以使用它们的全局变量来访问基本 url 并忽略上面的代码。

在windows桌面环境(不是Server)中,apache的进程通常是文件所有者的同一个用户。因此,几乎没有人会遇到有关 Windows 权限的任何问题。在 Linux 中,确保所有文件都具有适当的权限。通常人们会发现 images 文件夹有问题。根据您的需要更改其权限。 https://www.linux.com/learn/tutorials/309527-understanding-linux-file-permissions

关于php - 将网站从 Windows 本地主机移动到 Linux 实时服务器 : issues with filenames and paths,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31229882/

相关文章:

python - 使用Python打开网页

javascript - Backbone - 阻止在浏览器中编辑 URL 访问

php - (PHP/MySQL) 如何将新地址设置为默认地址 "new"并取消设置之前的地址?

javascript - 从 Woocommerce get_customer_location Ajax 事件中删除

c - 发生 fatal error 时如何重新启动Linux系统(C编程)

linux - 没有 "lib"前缀名称的 cmake find_library

php - 我应该在 PHP 中继续重新连接到 mysql 吗?

php - MySQL根据月份选择数据并将它们加在一起(最好在ZEND中)

c - 在 Linux 中跨共享库调用保留数据

Apache 条件重定向规则不转发 header 值