我使用PHP和MySQL在OS 10.5.8服务器上开发我的所有站点,并且我已经配置了我/etc/hosts和httpd.conf文件以example.dev在该机器上的任何浏览器中显示我的站点.
我最近安装了Android的软件开发工具包,我想用它来开发和测试针对移动Webkit的样式表 - 但是我无法在Android浏览器中访问我本地托管的项目.
这是有道理的,因为它模仿整个Android操作系统,但是有解决方法吗?或者我可以只测试存在于实际计算机互联网上的项目,也许是在隐藏目录中?
有人建议我编辑我的/etc/resolv.conf文件,但我不知道格式化本地托管域的正确方法resolv.conf- 我尝试了以下的变体,并且没有任何作用:
domain example.dev
nameserver 127.0.0.1
Run Code Online (Sandbox Code Playgroud)
要么...
domain example.dev
nameserver localhost
Run Code Online (Sandbox Code Playgroud)
在我的hosts文件中,它设置如下:
127.0.0.1 localhost example.dev example2.dev [etc]
Run Code Online (Sandbox Code Playgroud) 我试图运行多个虚拟主机(?),例如:http:/ localhost将指向一个项目,http:/ newsite指向另一个项目,http:/ myfavourite指向另一个项目不同的文档根目录.
(由于超链接发布限制,每个http://都是http:/ here)
我没有成功查看在/ etc/apache2中编辑apache文件的位置.我在寻找一个vhosts文件吗?
任何建议都很棒,谢谢.
我在Windows(本地服务器)中使用Apache Friends XAMPP.我httpd-vhosts.conf在这样的Apache配置目录中设置了虚拟主机
NameVirtualHost *:80
<VirtualHost *:80>
ServerName test.example.com
DocumentRoot "E:\xampp\htdocs\example"
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
我浏览URL时工作正常
http://test.example.com
Run Code Online (Sandbox Code Playgroud)
是否可以动态地从Apache .htaccess创建虚拟主机?
目前我的Apache服务器设置如此
<VirtualHost *:80>
ServerName www.example.com
ServerAlias example.com
DocumentRoot /var/www
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
问题是下面的所有内容/var/www都可以从其他地方访问.如果我有一个网页/var/www/john/bio.html,那么该网页可以借用脚本/图片var/www/jane/
我想像这样设置我的Apache服务器
<VirtualHost *:80>
ServerName www.example.com
ServerAlias example.com
DocumentRoot /var/www
</VirtualHost>
<VirtualHost *:80>
ServerName www.john.example.com
ServerAlias john.example.com
DocumentRoot /var/www/john
</VirtualHost>
<VirtualHost *:80>
ServerName www.jane.example.com
ServerAlias jane.example.com
DocumentRoot /var/www/jane
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
因此,所有用户的文件john去的/var/www/john/文件夹,同样的用户jane.然后,关闭符号链接(默认情况下),并且仅从/var/www/user/下方提供访问(默认情况下再次),我不必担心john's网页包含来自jane's网页的脚本/图像.
我订购了带有Plesk 11的新专用服务器.将我的网站从旧服务器移动到新服务器,但在打开网站时遇到了一些问题.
使用.htaccess,我强制客户端使用带有www的网站.Plesk默认是相反的:www到非www.结果重定向循环...
我的问题:如何禁用默认情况下添加Plesk这些行:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.example.com [NC]
RewriteRule ^(.*)$ http://example.com$1 [L,R=301]
</IfModule>
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助!
我在我的本地网络上设置了一个带有Apache2的Ubuntu服务器.
我想在同一服务器上管理不同的应用程序,当您请求提供专用应用程序的URL时.
例如
http://192.168.0.25/my_app_1 -> responds with app1 (for example a Ruby on Rails app)
http://192.168.0.25/my_app_2 -> responds with app2 (for example a php website)
[...]
# where 192.168.0.25 is the IP of the server
Run Code Online (Sandbox Code Playgroud)
我认为这是通过在Apache2中正确配置虚拟主机来完成的.
此时,app1的示例配置(即Ruby on Rails)如下所示:
<VirtualHost 192.168.0.25:80>
DocumentRoot path_to_my_public_app1_folder
<Directory path_to_my_public_app1_folder>
Options -MultiViews
AllowOverride All
</Directory>
RailsEnv production
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
如何定义子路径?也许是这样的?
<VirtualHost 192.168.0.25/my_app1:80>
Run Code Online (Sandbox Code Playgroud)
我做得对吗?因为此时我收到404(甚至不是自定义Apache页面"它的工作!")
我对这个事情感到很疯狂,但我想在php中自己制作它.
我在我的系统中安装了以下内容.
WAMP Server 2.2包括以下内容
主机文件的位置:
C:\Windows\System32\Drivers\etc\hosts
Run Code Online (Sandbox Code Playgroud)
WAMP服务器的位置:
C:\wamp
Run Code Online (Sandbox Code Playgroud)
Apache Web服务器的位置:
- C:\wamp\bin\apache\apache2.2.22
- C:\wamp\bin\apache\apache2.2.22\conf\extra\httpd-vhosts.conf
Run Code Online (Sandbox Code Playgroud)
MySQL服务器的位置:
C:\wamp\bin\mysql\mysql5.5.24
Run Code Online (Sandbox Code Playgroud)
PHP的位置:
C:\wamp\bin\php\php5.3.13
Run Code Online (Sandbox Code Playgroud)
我有创建VHost的简单示例,localhost
例如我想在80端口上创建简单域www.mylocalsite.com
为此,我有以下步骤:
(1)Enagle Apache模块
(2)打开httpd.conf文件以启用Vhost设置
C:\wamp\bin\apache\apache2.2.22\conf\httpd.conf
Run Code Online (Sandbox Code Playgroud)
Include conf/extra/httpd-vhosts.conf // Remove the # before Include and save file
Run Code Online (Sandbox Code Playgroud)
(3)在httpd-vhosts.conf文件中添加VHost条目
<VirtualHost *:90>
DocumentRoot "C:/mylocalsite.com/"
ServerName www.mylocalsite.com
# This should be omitted in the production environment
SetEnv APPLICATION_ENV development
<Directory "C:/mylocalsite.com/">
Options Indexes MultiViews FollowSymLinks
AllowOverride All
Order allow,deny …Run Code Online (Sandbox Code Playgroud) 我想在不同的virtualenv中运行两个不同的django_projects.这是代码:
ServerName ubuntu_server_apache
<VirtualHost *:80>
ServerName dev.hexxie.com
ErrorLog "/home/ashish/deployments/mysite_dev/conf/mysite_dev_error.log"
WSGIScriptAlias / /home/ashish/deployments/mysite_dev/mysite/mysite/wsgi.py
Alias /static /home/ashish/deployments/mysite_dev/static_root
<Directory /home/ashish/deployments/mysite_dev/static_root>
Require all granted
</Directory>
Alias /media /home/ashish/deployments/mysite_prod/data/media
<Directory /home/ashish/deployments/mysite_prod/data/media>
Require all granted
</Directory>
<Directory /home/ashish/deployments/mysite_dev/mysite/mysite>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
</VirtualHost>
WSGIPythonPath /home/ashish/deployments/mysite_dev/mysite:/home/ashish/.virtualenvs/mysite_dev/lib/python2.7/site-packages
<VirtualHost *:80>
ServerName hexxie.com
ServerAlias *.hexxie.com
ErrorLog "/home/ashish/deployments/mysite_prod/conf/mysite_error.log"
WSGIScriptAlias / /home/ashish/deployments/mysite_prod/mysite/mysite/wsgi.py
Alias /static /home/ashish/deployments/mysite_prod/static_root
<Directory /home/ashish/deployments/mysite_prod/static_root>
Require all granted
</Directory>
Alias /media /home/ashish/deployments/mysite_prod/data/media
<Directory /home/ashish/deployments/mysite_prod/data/media>
Require all granted
</Directory>
<Directory /home/ashish/deployments/mysite_prod/mysite/mysite>
<Files wsgi.py>
Require all granted
</Files>
</Directory> …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用mod_post_log模块让ejabberd正常工作.我已经定义了两个虚拟主机,我想要一些特定于vhost的模块配置.我的方法是ejabberd.yml文件中的以下内容:
append_host_config:
"host1.com":
modules:
mod_post_log:
url: "http://host1.com/ejabberd_post_message"
append_host_config:
"host2.com":
modules:
mod_post_log:
url: "http://host2.com/ejabberd_post_message"
Run Code Online (Sandbox Code Playgroud)
我希望这可行,但事实并非如此.根据日志,mod_post_log找不到url选项.
它工作正常,但如果我在以下内容中定义以下内容~/.ejabberd-modules/mod_post_log/conf/mod_post_log.yml:
modules:
mod_post_log:
url: "http://host1.com/ejabberd_post_message"
Run Code Online (Sandbox Code Playgroud)
但这仅适用于一个主机.
所以我不确定为什么我尝试的方法不起作用.有没有人可以澄清这一点,看看我做错了什么?我相信我正在为mod_post_log模块定义两个单独的配置,但显然这里有些不正确的地方.
对我来说,Nginx关于如何ssl_session_cache工作的文档有点不清楚.我想知道这是否:
ssl_session_cache shared:SSL:10m;
Run Code Online (Sandbox Code Playgroud)
在http块中或在每个 server(即虚拟主机)块中声明,导致1)一个名为SSL的单个全局高速缓存,大10 MB.或者2)每个服务器一个10 MB缓存,所有缓存的总大小= num servers x 10 MB.
文档:
共享
所有工作进程之间共享的缓存.高速缓存大小以字节为单位指定; 一兆字节可以存储大约4000个会话.每个共享缓存都应具有任意名称.可以在多个虚拟服务器中使用具有相同名称的缓存.
如果只有一个缓存,那么我想将其大小乘以服务器数量.所以,如果我有5个服务器(即5虚拟主机),那么我将ssl_session_cache在http块:
ssl_session_cache shared:SSL:50m; # 10 * 5 = 50
Run Code Online (Sandbox Code Playgroud)
所以,问题是:ssl_session_cache shared:SSL:10m;每个服务器创建一个10 MB缓存,还是为所有服务器创建一个10 MB缓存?
如果是每台服务器,那么对于所有服务器,是否无法为一个单一的全局缓存配置?(如果不可能,为什么不,如果有人知道?)对我来说好像这会导致更有效的内存使用.(因为一台拥有许多客户端的服务器可以使用本来专用于其他可能暂时没有客户端的服务器的内存.)